0

こんにちは、私は観測可能な配列を持っています

this.item = ko.observableArray({
     tax: ko.observable(8.0);
     price: ko.observable(100.00);
     eachTotal:  ko.computed(function() {
           this.tax() * this.price();
     });
});

オブジェクト [ウィンドウ] に税法がないというエラーが表示されます。

どうすればいいですか?

4

2 に答える 2

1

私がしなければならなかったのはこれでした。

ko.utils.arrayForEach(myModel.item(), function(it) {
     it.eachTotal = ko.computed(function() {
        return it.tax() * it.price();
     });
});

これがこれを行うための最も効率的な方法であるかどうか疑問に思っていますか?

于 2012-12-26T16:10:58.997 に答える
1

これは、javascript で期待したとおりではない可能性があります。それは呼び出し元のコンテキストです。解決策として、コンストラクターの先頭で、selfまたは _self
this に 設定することがよくあります。ノックアウトで もう一度例を見て、自分自身に注意してください。

または、arrayForEachがアンダースコアのように機能する場合、「このコンテキスト」である 3 番目のパラメーターがあります。

于 2013-01-10T14:07:59.237 に答える