鉴于以下内容,我如何将ID 10退出?
function ChildListViewModel()
{
var self = this;
self.children = ko.observableArray([]);
self.children.push({id:20,name:"Jake"});
self.children.push({id:10,name:"Jake"});
self.find = function(id)
{
console.log(self.children().length);
setTimeout(function(){console.log(self.children().length);}, 500);
found = ko.utils.arrayFirst(self.children(), function(child) {
return child.id() === id;
});
console.log(found);
return found;
}
}
我想做点什么
ChildVM.find(10);
使用ko.utils.arrayFirst
和ko.utils.arrayForEach
的所有尝试都让我失望。
修改
这现在有效,请参阅选定的答案。
有关加载订单和AJAX的问题意味着它无法正常工作。
答案 0 :(得分:12)
return ko.utils.arrayFirst(self.children(), function(child) {
return child.id === id;
});
请记住使用self.children()
来获取基础数组。