次の方法でビュー モデルを設定する場合、マークアップでデータ バインドを宣言する適切な方法は何ですか?
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)
.
.
.
}