Knockout.js computed
Knockout.js computed
我正在使用Knockout.js开发计算器。我正面临着一个我不知道如何处理的局面。在下面的示例中,当用户输入产品和值并将值保存在DB中时,一切都工作正常。但是当用户来编辑这个页面时,我的要求是显示用户输入的所有值以及总数。但当用户改变产品或数量时,总量应该按预期变化。
我们现在将total存储在DB中,并且total可以被一些管理员用户更改。在这种情况下,是否有一种方法可以在用户进入编辑页面时重写计算值,但当用户更改product或quantity时,则计算应该使用product和quantity的最新值。
感谢您的帮助。
var TsFoundationDeviceModel = function(product,qty) {
var self = this;
self.product = ko.observable();
self.quantity= ko.observable();
self.computedExample = ko.computed(function() {
return self.product() * self.quantity() ;
});}
我的HTML代码看起来像
<input name="product" data-bind="value:product">
<input name="value" data-bind="value:value">
<input name="total" data-bind="value:computedExample"/>
必须将视图绑定到屏幕上。看看这个小提琴,给它
var TsFoundationDeviceModel = function(product,qty) {
var self = this;
self.product = ko.observable(product);
self.quantity= ko.observable(qty);
self.computedExample = ko.computed(function() {
return self.product() * self.quantity() ;
});}
ko.applyBindings(new TsFoundationDeviceModel(2,3));
http://jsfiddle.net/Z6VPV/5/当你在计算中引用可观察对象时,你需要将它们视为函数,所以你将使用return self.product() * self.quantity();
而不是return self.product * self.quantity ;
小提琴:http://jsfiddle.net/SAV9A/
相关文章:
- 可以't让我的if语句处理js中的html表单输入
- 使用agility.js进行页面布局和合成
- 使用Clipboard.js复制span文本
- 使用JS如何动态更改显示的html文件中的文本背景颜色
- 强制模板刷新ember.js
- 如何编写HTML输入的JS内联
- Angular JS IE9 Hashbang url rewriting
- 使用JS将数组转换为json对象
- Node.js v6.2.0类扩展不是函数错误
- 当js函数's已执行
- 要求未定义JS回调参数
- 在自定义mean.io包中使用angular-chart.js作为依赖项
- 无法在数据endVal中设置值=“”;{{ucount}}”;使用Angular JS的CountUp
- 如何从Java/scala调用js美化程序
- 如何更改<svg>标记为<img>用js标记
- 淘汰赛JS;绑定值未更新或 ko.computed() 未更新
- 如何在knockout.js中的foreach中使用computed方法
- Ember.js:如何使用computed property作为路由
- Knockout.js computed
- Vue.js在computed中获取v-for数组值