knockout.js - knockoutjs,通过自定义绑定(bind)修改时未观察到可观察数组

标签 knockout.js

我有一个自定义绑定(bind),可以在 init 上创建事件处理程序。在这些事件处理程序中,我调用 View 模型的一个函数来更新我的 View 模型属性之一(这是一个可观察的数组)。

但是,绑定(bind)到此属性的 DOM 元素不会更新。

此外,如果我通过直接调用 View 模型的方法来更改 View 模型属性,则 DOM 元素会正确更新。另外,如果使用之前的第一种方法更改了属性,那么现在 View 模型属性包含所有正确的信息。

抱歉,如果不清楚,这里有 fiddle 来测试它:http://jsfiddle.net/8RTjN/67/ 运行它时,选择一行( View 模型已更新,但绑定(bind)未更新),然后单击添加按钮(直接修改 View 模型属性),现在绑定(bind)已正确更新。

那么:我做错了什么?

最佳答案

当您推送到您当前拥有的selectedRequests

this.selectedRequests().push(request);

您不需要 ()

this.selectedRequests.push(request);

关于knockout.js - knockoutjs,通过自定义绑定(bind)修改时未观察到可观察数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7989566/

相关文章:

javascript - Knockout.js 中嵌套 View 模型和 json

asp.net-mvc - Internet Explorer 中的 knockout 验证错误?

javascript - knockout 数据绑定(bind)字符串串联数组

javascript - 如何设置默认时间和分钟

javascript - ajax 请求在 knockout js 中发送第二次点击

knockout.js - 如何交换 observableArray 中的两个项目?

javascript - 一个 Knockout.JS ViewModel 中的多个数组

javascript - KnockoutJS - 以设定的时间间隔重新计算计算值

javascript - 跟踪 Knockout.js 订阅者