私はRevealingModulePatternを使用して、knockout.jsコードの構造を取得しています。これは非常に単純な目標の例です。オブジェクトのName-Propertyの値を返します。問題:関数パラメーターxが未定義です。
http://jsfiddle.net/ThomasDeutsch/8hzhp/
ここでの問題は正確には何ですか?これをいじるのを手伝ってください。
私はRevealingModulePatternを使用して、knockout.jsコードの構造を取得しています。これは非常に単純な目標の例です。オブジェクトのName-Propertyの値を返します。問題:関数パラメーターxが未定義です。
http://jsfiddle.net/ThomasDeutsch/8hzhp/
ここでの問題は正確には何ですか?これをいじるのを手伝ってください。
おそらくあなたは書くべきです
x.Name
それ以外の
x.getElementsByName('Name')
xはドキュメントツリーの要素ではないため、xがこのメソッドをどこから取得する必要があるのかわかりません。しかし、私はこれに関する専門家ではありません。
わかりました、これは私のために働きます:
// My Model
function Customer(id, name, lastname) {
this.Id = ko.observable(id);
this.Name = ko.observable(name);
this.LastName = ko.observable(lastname);
}
// My ViewModel
ViewModel = (function () {
var customer = new Customer(1, "Thomas", "D")
var getName = ko.computed(function () {
return customer.Name ();
})
;
return {
getName: getName
};
})();
ko.applyBindings(ViewModel);
returnステートメントのgetNameは、関数の結果ではなく、関数である必要があります。おそらく、フレームワーク(私にはわかりません)は、値を取得するために関数(引数なし)を呼び出します。
私には解決策があります。問題は、関数を定義していないことでした。ko.computedはその仕事をしません。したがって、これが解決策です 。Knockout.js:関数パラメーターが未定義