我有一个淘汰模型,我收到一个我不明白的错误。
以下是令人讨厌的代码部分:
<!-- ko with: SearchModel -->
...
<img class="search-img" data-bind="visible: searching" src="@Url.Content("~/Static/Hypercube_Large_Light_Transparent.gif")" height="30" />
<img id="searchIcon" class="search-img" data-bind="visible: !searching()" src="@Url.Content("~/Static/search_icon.png")" height="30" />
...
<!-- /ko -->
在SearchModel.js中:
...
this.searching = ko.observable(false);
...
我在对searching
的SECOND引用上收到错误。第一个解决得很好,没有其他错误。奇怪的是,代码实际上是可行的,所以每当我将searching
变量更改为true
时,第二个图像就会消失,第一个图像会出现,然后当我将其更改回false
时,第一个消失,第二个出现。
Uncaught ReferenceError: Unable to parse bindings.
Bindings value: visible: !searching()
Message: searching is not defined
答案 0 :(得分:0)
我怀疑您需要在SearchModel
绑定之前检查是否存在with
。
类似的东西:
<!-- ko if: SearchModel() -->
或更具体:
<!-- ko if: SearchModel() !== 'undefined' && SearchModel() !== null -->
您还可以根据视图模型层次结构创建ko.pureComputed
以检查SearchModel
是否存在,并在HTML使用代码中创建:
<!-- ko if: SomePureComputed -->