Controller setup in der init-Funktion sind immer gleich
Habe ich schon eine Ember.Controller
mit setup-code in der init-Funktion. In Wirklichkeit ist dieser code macht AJAX-Anfragen.
Aber wenn ich zwei Instanzen von diesem controller sind Sie immer gleich. Warum, und was kann ich tun, wieder dieses?
Ich habe dieses einfache Beispiel, die sollten schreiben Test 1
Test 2
in die Konsole ein. Etwas seinem schreiben Test 2
zweimal.
App = Em.Application.create({});
App.TestController = Em.Controller.extend({
content: Em.Object.create({
info: null,
}),
init: function() {
if(this.id == 1)
{
this.content.set('info', "Test 1");
}
if(this.id == 2)
{
this.content.set('info', "Test 2");
}
},
});
var c1 = App.TestController.create({id: 1});
var c2 = App.TestController.create({id: 2});
console.log('C1: ' + c1.get('content').get('info'));
console.log('C2: ' + c2.get('content').get('info'));
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie
content
Wert ininit
, andernfalls wird der Wert eingestellt, bei class-Deklaration wird die gemeinsame Nutzung durch alle Instanzen.Sehen http://codebrief.com/2012/03/eight-ember-dot-js-gotchas-with-workarounds/
this._super();
innerhalb Ihrer benutzerdefinierteninit
Funktion ...