Ich habe einen Tag lang in EmberJS gegraben:).
Ich habe mehrere Beispiele verfolgt. Einige Beispiele verwendeten ArrayProxy, andere ArrayController. Ich schaute auf den unminifizierten Quellcode und ... .guess was ... Ember.ArrayController erweitert einfach Ember.ArrayProxy, aber es gibt keine zusätzlichen Methoden oder Funktionen in ArrayController.
Also ... meine Frage ist ... warum haben wir zwei gleiche Klassen?
Es gibt keinen Unterschied zwischen den beiden Klassen.
Es ist für alle von uns, die von SproutCore 0.9.x, 1.x und frühen SproutCore 2 Betas kommen und einfach den Namen ArrayController
verwenden, denke ich. Ich würde die Verwendung von ArrayProxy empfehlen, falls das Kernteam die eine Codezeile, die ArrayController ermöglicht, abwertet: -)
Aus Embers API-Dokumenten :
Hinweis: Zum jetzigen Zeitpunkt fügt ArrayController seiner Superklasse ArrayProxy keine Funktionen hinzu. Das Ember-Team plant, in Zukunft zusätzliche Controller-spezifische Funktionen hinzuzufügen, z. Einzel- oder Mehrfachauswahlunterstützung. Wenn Sie etwas erstellen, das konzeptionell ein Controller ist, verwenden Sie diese Klasse.
Tags und Links ember.js