我有一个应用程序,允许我们的客户来我们的网站,获得报价,然后做回报分析,等等…
有两部分..。
我正在使用knockout同步字段...因此,当客户说他们需要一台10 x 10的设备时,我们向他们报价4,000美元。该值将作为成本复制到“投资回报”表中。然后我们扣除能源储蓄抵免,投资税收抵免,等等。想出“净投资”。
现在,如果用户已经对他们计划在我们的一个单元上花费多少有了大致的了解,会发生什么呢?他们不知道他们需要一个10x10的单元,他们只知道他们有5000美元可以投资,并想看看这项投资是否有良好的回报。因此,这个示例用户跳过了报价部分,只想输入他们的假设价格并获得一些数字。
我的视图模型设置如下:
self.height = ko.observable('<?php echo $height; ?>'),
self.width = ko.observable('<?php echo $width; ?>'),
/* Math simplified to remove gobbeldygook */
self.cost = ko.computed(function () {return (self.height() * self.width()) * 40;}),我如何设置“成本”,使其在提供高度和宽度时自动计算,但也可通过UI编辑和更改?
非常感谢你的帮助。
发布于 2013-06-06 01:07:21
您可以提供一个读取函数,该函数在用户访问它时返回值,就像您已经拥有的那样,但也可以提供当值是写入的时发生的逻辑。
根据您的设置,您似乎希望计算出的成本的写入部分为高度和宽度设置适当的值。
self.cost = ko.computed({
read: function () { return (this.height() * this.width()) * 40; },
write: function(value) { /* your logic here to set height and width */ },
owner: self
});full docs are here,下跌约30%:
https://stackoverflow.com/questions/16945831
复制相似问题