以下列方式设置视图模型时,在标记中声明数据绑定的正确方法是什么?
var Info; // global
function initInfo() {
Info = function () {
var self = this;
self.tag = ko.observable(null);
self.blurb = ko.observable(null);
self.tag.subscribe(function (newValue) {
alert(newValue);
});
};
}
我调用绑定所以:
ko.applyBindings(Info, document.getElementById("tag"));
我在控制台中收到此错误:ReferenceError: tag is not defined
带有此标记:
<input type="text" name="tag" id="tag" data-bind="value:tag" />
但是,如果我将Info视图模型设置为如下对象,则没有这样的问题,并且绑定已成功:
var Info = {
tag: ko.observable(null)
.
.
.
}
答案 0 :(得分:1)
信息是功能,而不是对象。您需要调用'new Info()'将结果对象传递给applyBindings。