我已经创建了一个View Model对象来与KnockoutJS一起使用。在computedObservable中更新observableArray会创建一个循环引用?
它有一个叫做“年”,这是可观察到的数组属性...
viewModel.Years = ko.observableArray([]);
然后我有一个计算观察到,在这我想更新数组的内容...
viewModel.FuturePrediction = ko.computed(function() {
viewModel.Years.removeAll();
// etc...
});
我遇到的问题是,这似乎创建了一个无限循环。我是猜测 Knockout正在检测到我正在访问'年'属性并创建它与'FuturePrediction'属性之间的依赖关系。
只要我尝试修改数组的内容,计算的函数就会再次触发。问题是我所做的只是更新“年份”数组,而不是读取它,因此实际上不是依赖项。
任何想法我可以做些什么来解决这个问题?
感谢您的回复!我其实刚回到这里说我在你的博客上找到了答案:http://www.knockmeout.net/2012/05/knockout-2-dot-1-is-out.html - 即 - 升级到KO 2.1!再次感谢,并保持良好的工作! :O) – 2012-07-15 13:25:53