我使用淘汰賽繼承了一個項目^3.1.0
。我需要建立一些功能。我從來沒有使用Knockout。淘汰賽無法處理綁定 - 未定義
每個視圖都有一個視圖模型,該視圖模型從主視圖模型調用init(model)
。
屬性在初始化時初始化,並在視圖中使用,沒有問題。例如:
model.entities = ko.observableArray([]);
model.hasEntities = ko.observable(false);
在無容器被初始化本身和使用沒有錯誤這樣的結合:
<!-- ko if: hasEntities -->
<!-- ko foreach: { data: entities, as: 'entity' } -->
所以我初始化我的新特性一樣的地方/途徑:
model.numberOfColumns = ko.observable(2);
model.columnGenerator = ko.computed(function() {
return ko.utils.range(0, model.numberOfColumns());
}, model);
並且使用它:
<!-- ko foreach: { data: columnGenerator, as: 'index' } -->
,並得到這個錯誤:
knockout.js:72 Uncaught ReferenceError: Unable to process binding "foreach: function(){return { data:columnGenerator,as:'index'} }" Message: columnGenerator is not defined
我搜索有關這個錯誤的許多問題並沒有幫助。
謝謝!
完成後完整的錯誤消息 – haim770
(必須輸入11字符發表評論) – MayNotBe
可能是因爲'< - KO的foreach:{數據: columnGenerator,如下所示:'index'} - >'與'$ root'不在同一個*範圍內。試試'{data:$ root.columnGenerator,如:'index'}'或者包含完整的相關HTML部分。 – haim770