在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
方法中)。数据设置正确后,是否可以“延迟”路由?