knockout.js - Knockout.mapping.js - 更新 observableArray 不会更新 ko.compulated 值

标签 knockout.js knockout-mapping-plugin

根据knockout.mapping.js的文档,它说数据对象的属性成为可观察的,列表成为可观察的数组,但是我在更新应该是ko.mapping.fromJS的产品的可观察数组时遇到问题.

我创建了以下 fiddle :

http://jsfiddle.net/zjT6c/1/

请注意,当您单击“添加服务”按钮时,控制台显示 observableArray 已更新,但 formattedService 计算值并未更新。有什么想法我做错了吗?如果您更改文本区域,则名称是可编辑的,但是当您将某些内容插入其中时,服务列表的计算值不会更新...

感谢您的任何想法!

最佳答案

解决了我的问题,我正在使用:

observableArray().push('some thing');

当我应该做的时候:

observableArray.push('some thing');

一旦我这样做了,一切都会正常。

关于knockout.js - Knockout.mapping.js - 更新 observableArray 不会更新 ko.compulated 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9369896/

相关文章:

javascript - JS/CSS/HTML 中的动态布局

knockout.js - 如何从父 View 模型中的表单访问属于组件的可观察量?

knockout.js - Knockout 不映射数组中对象的属性

knockout.js - Knockout isDirty 示例,使用映射插件中的动态 View 模块

javascript - Knockout.js:使用带有映射插件的嵌套可观察量

javascript - 如何将 observableArray 中的 observable 复制到另一个 observableArray?

javascript - 使用 OptGroup 选择框

javascript - 如何使用shim在requirejs中加载knockout.observableDictionary插件?

knockout.js - 如何在 knockout 中使用 tagit

javascript - 将 true/false 绑定(bind)到 Knockout JS 中的单选按钮