我正在使用Knockout构建一个非常数字/选项繁重的应用程序,而我目前正在处理的屏幕上,在幕后发生的事情方面非常复杂。整个屏幕是动态的,显示的选项是从observableArray生成的。
应用程序的工作方式非常复杂,我已经创建了一个精简的JSFiddle,供您在此处查看:http://jsfiddle.net/z56zV/
每当点击该按钮时,我希望getValueOne
重置为0,但无论我尝试什么,似乎都没有将值写入getValueOne
。
PS。我知道你不应该真的提交一篇没有代码的SO帖子,但我觉得最好的方法是让你知道幕后发生的事情就是和JSFiddle一起玩。
更新:我的代码工作到一定程度,其中getValueOne的写入函数正在读取发送给计算机的值,但是我很难将其存储为新值? http://jsfiddle.net/z56zV/1/
答案 0 :(得分:2)
计算机正在为你计算东西 - 你可以在写入时执行一些操作,但它本身并不是你可以写入的变量。
要清除计算,您必须清除基础数据......
self.resetValueToZero = function () {
for (var i = 0; i < self.computedValues().length; i++) {
self.computedValues()[0].value(0);
}
};