【发布时间】:2016-03-11 06:59:45
【问题描述】:
我正在使用 knockoutJS,但在使用 pureComputed 属性时遇到了一些问题。
这是我的模特
var LineItem = function() {
var self = this;
self.id = ko.observable('');
self.name = ko.observable('');
self.description = ko.observable('');
self.unit_price = ko.observable('');
self.quantity = ko.observable(1);
self.amount = ko.pureComputed(function() {
return self.unit_price() ? self.unit_price() * self.quantity() : 0;
});
};
当我使用 ko.mapping.toJS(LineItem) 发布数据时,它可以工作,但是,当我从服务器获取数据(以 json 格式)并使用 ko.mapping.fromJS(dataJSON) 再次构建时视图模型,它加载了数量字段,但它不是一个 pureComputed 值,所以当我更改数量值时它不会更新。
一旦使用 knockoutJS 映射插件从服务器检索字段,我如何才能再次将字段设为 pureComputed?
【问题讨论】:
-
您是否考虑过使用
ignore映射选项? -
不想忽略某个字段,只想保留ko.mapping.toJS之后的pureComputed
标签: javascript knockout.js viewmodel knockout-mapping-plugin