Knockout のマッピング ライブラリで何が誤解されているのかを理解しようとしています。私は単純な例にそれを取り除きましたが、それでもfromJS
呼び出しで失敗する可能性があります (むしろ、マップされた変数で更新されません)。
この例で根本的に間違っていることは何ですか?
// Here's my view model
var ViewModel = function() {
this.firstName = ko.observable('first');
this.lastName = ko.observable('last');
};
var myVM = new ViewModel();
ko.applyBindings(myVM); // Apply to Knockout (works)
myVM.lastName('maiden name'); // Test an update (works)
var newData = {firstName: 'new', lastName: 'person'};
// Try update the ViewModel
ko.mapping.fromJS(newData, myVM); //(No update, or error)
// Intended result - UI updates to 'new person'
対応するビュー:
<div class='liveExample' >
<p>First name: <input data-bind='value: firstName' /></p>
<p>Last name: <input data-bind='value: lastName' /></p>
</div>
私のJSフィドルの例。