在我的剔除应用程序中,我试图使用remove方法删除一个元素。但我知道错误了
.remove不是函数
下面是代码
ActivityArray = ko.observable([]);
ActivityArray(result.Regular); //Result of an api call
ActivityArray.remove(function (element) { return element.Name === 'abc'; })无法理解为什么它不起作用。我在其他地方和其他地方都使用过remove,它的工作很好。
请指点
谢谢
发布于 2018-12-17 09:30:12
您必须使用observableArray (https://knockoutjs.com/documentation/observableArrays.html),而不是observable。
var viewmodel = function(){
var self = this;
var ActivityArray = ko.observableArray([]);
var result = {
"Regular":[
{"Name": "abc"},
{"Name": "xyz"}
]
};
ActivityArray(result.Regular); //Result of an api call
console.log("Before remove: ", ActivityArray());
ActivityArray.remove(function (element) { return element.Name === 'abc'; });
console.log("After remove: ", ActivityArray());
};
ko.applyBindings(new viewmodel());<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
https://stackoverflow.com/questions/53811769
复制相似问题