2012-06-08 25 views

risposta

22

Basta usare this.get('theProperty')

Esempio:

var data = { 
    foo: "hello", 
}; 

var MyModel = Em.Object.extend({ 
    init: function() { 
     this._super(); 
     var foo = this.get('foo'); 
     alert(foo); 
    } 
}); 

MyModel.create(data); 
0

Utilizzare le chiusure e creare una nuova funzione di inizializzazione che passa l'argomento chiuso alla sua funzione di inizializzazione del prototipo. Inoltre, in questo modo non si finisce per sovrascrivere le proprietà sensibili, come ad esempio i metodi. nota: init viene chiamato dopo che tutte le proprietà sono impostate dal costruttore

Class = Ember.Object.extend({ 
init:function(response){ 
    console.log(this.get("msg")+this.get("msg_addressee")+"?"); 
    console.log(response); 
}, 
msg:"SUP, " 
}); 

var arg = "not much."; 

obj = Class.create({ 
init:function(){ 
    console.log("output:"); 
    this._super(arg); 
    console.log("indeed, "+arg); 
}, 
msg_addressee:"dude" 
}); 

//output: 
//SUP, dude? 
//not much. 
//indeed, not much. 
Problemi correlati