在Ember.js ArrayController
中查找物品的正確方法是什麼?我在控制器中設置了一組觸點:在Ember ArrayController中查找物品
App.contactsController = Em.ArrayController.create({
content:[],
});
控制器中有一些對象,它們顯示出來並且一切正常。然後,我想實現具有序列化/反序列化的路由器:
...
deserialize:function (router, params) {
var contact = App.contactsController.find(function(item) {
return item.id == params.contact_id;
});
},
...
但是,find函數似乎沒有做任何迭代。可能是什麼原因?在應用程序調用其ready
方法之前,路由器是否可能嘗試執行路由?這是我用控制器填充數據的地方。
編輯:好的,我發現路由器試圖在數據填充我的arrayController之前進行過渡(在Ember.Application.ready
方法中)。數據設置正確後,是否可以「延遲」路由?