【发布时间】:2014-07-10 04:30:48
【问题描述】:
我有一个 ObservableArray 对象,用户可以从中删除。当一个对象被删除时,该对象将从 UI 中删除,这会调用后端的一个函数,该函数会删除附加到我的模型的列表中该索引处的对象,然后自然而然地调整列表的大小。但是,在前端,可观察数组没有调整大小。如果我在索引 2 的第三个位置删除一个项目,然后单击以删除同一位置的一个项目,它将调用删除索引 3 处的项目,因为未调整 observable 数组的大小。有没有办法让这个数组每次都调整大小,或者将所有东西都移动到正确的位置,而无需在每次移除对象时重新创建可观察数组?
ViewModel 和 remove 的代码是
function TweetViewModel(){
var self = this;
self.tweets = ko.observableArray([]);
self.removeTweet = function(tweet) {
self.tweets.remove(tweet);
};
}
【问题讨论】:
标签: knockout.js