【发布时间】:2012-11-27 10:52:57
【问题描述】:
我正在尝试从网格中添加/加载记录,在网格之外对其进行编辑并更新 observablearray 和 UI。
演示:http://jsfiddle.net/DiegoVieira/ckMJE/98/
您会注意到,添加或编辑没有按预期工作。 如果我添加一个新项目,它确实会添加到数组中并反映 UI,但下次我添加另一个项目时,旧项目会被添加到位。
数据是从服务器中提取的,它有大约 30 多个属性,因此构建对象时每个属性都为 ko.observable 不是一种选择。
例如
$.get('api/objects', function (data) {
self.stones(data.stones); // when the vm loads, this is empty
self.stone(data.stone); // when the vm loads, this is empty
});
提前致谢。
【问题讨论】:
-
data.stone每次都是同一个对象(至少在示例中) -
#Andrew Whitaker 是的,我在看到 Niemeyer 代码后注意到了。
-
#subhaze 是的,我看到了插件,但我没有看到如何让它与我的生产代码一起工作。照原样,我认为它工作正常,我只是错过了删除/添加部分来更新数组。谢谢!
标签: knockout.js