我已经调用了一个函数并填充了我的数组,这很好,我现在要循环访问该数组并删除其中出现'Name'字段值更多的元素而不是数组中的一次(即多个记录具有相同的'Name'值),其中HubID字段为空。使用javascript从knockout.js可观察数组中删除元素
任何人都可以提供一个例子吗?
感谢
我已经调用了一个函数并填充了我的数组,这很好,我现在要循环访问该数组并删除其中出现'Name'字段值更多的元素而不是数组中的一次(即多个记录具有相同的'Name'值),其中HubID字段为空。使用javascript从knockout.js可观察数组中删除元素
任何人都可以提供一个例子吗?
感谢
您应该使用arrayGetDistinctValues
淘汰赛效用函数把所有的独特的产品名称的数组。
self.uniqueNames = ko.dependentObservable(function() {
var arrayOfNames = ko.utils.arrayMap(self.Products(), function(item){ return item.Name})
return ko.utils.arrayGetDistinctValues(arrayOfNames).sort();
});
可以使用基因敲除arrayFilter
实用程序来选择从所述数组项的某个子集筛选阵列。在这个HubID不为null的例子中。
self.filteredProducts = ko.computed(function() {
return ko.utils.arrayFilter(this.Products(), function(item) {
return item.HubID != null;
});
});
我认为这将是东西沿着这些线路
self.count = ko.computed(function (_name) {
var countedItems = ko.utils.arrayFilter(self.Products(), function (arrayItem) {
return arrayItem.Name == _name;
});
return countedItems.length;
});
它是一个Knockout Observable Array吗?到目前为止,您的代码的一个例子会有所帮助。 – Drummad