[英]Removal of item from ko.observableArray
我想从ko.observableArray中删除一个对象,我有两个observableArrays
self.arrayA = ko.observableArray();
self.arrayB = ko.observableArray();
然后在一个功能,我想删除一个项目。
self.myRemoval = function(item){
var arrayToRemoveFrom;
if ( somelogic ) {
arrayToRemoveFrom = self.arrayA();
}
else {
arrayToRemoveFrom = self.arrayB();
}
arrayToRemoveFrom.remove(item);
}
“ arrayToRemoveFrom.remove(item)”行导致异常,表示remove不是函数。 删除“项目”的最佳方法是什么?
remove
是ko.onservableArray
的特殊功能 。
但是,当您编写self.arrayA();
最后带有()
的您将返回不具有remove
函数的底层JavaScript数组,并且您会收到异常。
要修复您的代码,您只需删除()
:
self.myRemoval = function(item){
var arrayToRemoveFrom;
if ( somelogic ) {
arrayToRemoveFrom = self.arrayA;
}
else {
arrayToRemoveFrom = self.arrayB;
}
arrayToRemoveFrom.remove(item);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.