Вот fiddle.Зачем мне снова называть applyBindings после изменения свойства модели просмотра?
У меня есть модель просмотра, где часть данных будет доступна после некоторого взаимодействия с пользователем.
Поскольку applyBindings
уже вызывается в готовом документе, почему необходимо снова звонить во время события нажатия кнопки?
HTML:
<p>first name:
<input type="text" data-bind="value: ray.firstName" />
</p>
<p>last name:
<input type="text" data-bind="value: ray.lastName" />
</p>
<p>first name:
<input type="text" data-bind="value: joe.firstName" />
</p>
<p>last name:
<input type="text" data-bind="value: joe.lastName" />
</p>
JS:
function person(firstNm, lastNm) {
this.firstName = firstNm;
this.lastName = lastNm;
}
function myApp() {
this.ray = new person();
this.joe = new person();
}
var app = new myApp();
app.ray = new person('ray', 'cheng');
ko.applyBindings(app);
$('#showName').on('click', function() {
app.joe = new person('joe', 'public');
ko.applyBindings(app); // <-- why is this needed since applyBindings already called above.
});
Я предлагаю, принимая какое-то время, чтобы пройти через knockout.js годов [учебники] (http://learn.knockoutjs.com/). Они очень полезны. –