我有以下ViewModel:
function vm(model) {
var self = this;
var Create = function (data) {
var order = ko.utils.extend(data, {});
order.Price = ko.observable(data.Price);
return order;
}
self.orders = ko.mapping.fromJS(model, {
create: function (options) {
return Create(options.data);
}
});
self.FirstPrice = ko.pureComputed(function () {
return parseFloat(self.orders()[0].Price());
});
}
加载页面时,“ FirstPrice”会正常更新,但是在更改“ orders”数组的第一行的价格后,“ FirstPrice”将保持页面加载后的第一个值。
什么不见了?
*我删除了一些代码行以简化示例
谢谢
我发现了问题。问题是我在绑定输入中使用inputmask。
对此有一个解决方法:https : //github.com/RobinHerbots/jquery.inputmask/wiki/HOWTO :-Integration-with-Knockoutjs
很抱歉没有将HTML放在我在问题中使用可观察的位置,这可以帮助您;)
再次感谢
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句