我正在學習Knockout。我想要使用Ko.Computed
返回圖像的URL,我的圖片存儲在無法解析綁定,未定義Url;
圖片根文件夾。
。在加載頁面我有以下錯誤:
Error: Unable to parse bindings.
Message: ReferenceError: Url is
not defined; Bindings value: text:Url
我的代碼如下:
<script>
$(function() {
// Model
var Model = {
id: "1",
path: "/Images/"
};
// ViewModel
var ViewModel = function() {
var self = this;
self.Id = ko.observable(Model.id);
self.path = ko.observable(Model.path);
self.Url = ko.computed(function() {
return self.path+ self.Id+".jpg";
});
// etc...
};
ko.applyBindings(ViewModel);
});
</script>
我的HTML標記是:
<img data-bind="attr:{src:Url}" />
<span data-bind="text:Url"></span>
<span>Photo Id:</span>
<input data-bind="value:Id" type="text" />
'ko.applyBindings(視圖模型);'應該是' ko.applyBindings(new ViewModel());' – haim770
@ haim770謝謝,不好意思問一下,但是請你指導我什麼時候應該使用新的,什麼時候沒有新的,因爲我是Knowckout的新手。謝謝 – user576510
'applyBindings'正期待一個包含要綁定的數據的'object'。你的'ViewModel'變量引用一個'function',你需要使用'new'運算符創建一個'ViewModel'的實例。請參閱https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript – haim770