我的视图模型中有一个对象,它使用映射插件从服务器更新数组数据。
映射的可观察数组的内容显示在表中。现在,用户可以“加载更多”,从而触发对服务器的请求并获取下一个请求 来自服务器的'n'行数据。
使用带有新数据的映射插件更新视图模型对象会导致替换现有数据。我的目标是使映射插件将新数据附加到现有的可观察数组。
想知道这是否可以使用自定义'create'或'update'回调?如果是的话,一些例子会有所帮助。
目前,作为一种解决方法 - 我已经使用手动将数据推送到视图模型对象中。
答案 0 :(得分:0)
你可以推它而不是重新分配它:
如果您的可观察数组为self.displayedData
,那么在您的ajax成功中,您可以执行类似
ko.mapping.fromJS(data, self.displayedData)
而不是$(data).each(function(i,e){
self.displayedData.push(ko.mapping.toJS(e));
});
{{1}}