我已經創建了一個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