2013-02-12 82 views
2

我無法讓觀察者在Ember.js中做任何事情。基本上,我有一個Ember.Select下拉菜單,並希望將更多操作綁定到在下拉列表中選擇值的事件。例如:觀察員不在Ember工作?

App.selectedPersonController = Ember.Object.create({ 
    person: null, 
    personDidChange: function() { 
    // do something here when the person changes 
    console.log("PERSON CHANGED") 
    }.observes('person') 
}); 

即使「人員」屬性正在更新,也沒有任何事情發生。有什麼建議麼?

回答

6

這是由於從pre4版開始,您無法在Em.*.create()函數上設置屬性或可觀察值。您必須首先使用.extend()函數,然後在其中設置所有屬性和可觀察值,然後創建該對象。

作爲示例,請查看使用擴展功能的jsfiddle。然後嘗試僅使用create將其刪除,您會看到該應用不再有效。

+0

是的,這是有效的。 。 。 – reptilicus 2013-02-12 20:30:39

3

或者使用createWithMixins()代替create()