1
我有Knockout.js视图模型具有嵌套可观察数组。如何更新Knockout.js视图模型与服务器
function ParentVM(data) {
var self = this;
self.childs= ko.observableArray([]);
ko.mapping.fromJS(data, mapping, this);
}
function ChildVM(data) {
var self = this;
self.propertyA = ko.observableArray([]);
self.propertyB = ko.observable();
ko.mapping.fromJS(data, mapping, this);
}
function GrandChildVM(data) {
var self = this;
self.propertyX = ko.observable();
self.propertyY = ko.observable();
self.propertyZ = ko.observable();
ko.mapping.fromJS(data, mapping, this);
}
我有以下绑定:
data-bind="value: propertyX, valueUpdate: 'keydown'"
现在,我怎么可以添加事件处理程序调用我的REST端点来更新视图模型状态时,这些属性的变化?
是的,但是这似乎并没有工作。订阅的回调不会被调用。 – Fdr 2012-07-27 11:23:51
这没有任何意义,模型是否正确绑定?参数中的任何值是否显示在UI中? – 2012-07-27 11:29:58
谢谢,问题是当数据初始化时它没有使用提供的映射。将ko.mapping.fromJS(数据)更改为ko.mapping.from(数据,映射)可解决问题并订阅属性。 – Fdr 2012-07-27 11:49:59