0

すぐに解決できないので、早急な回答をお待ちしております。

依存オブザーバブルを操作する関数を介して、他のさまざまなオブザーバブルの値に応じてオブザーバブルを更新したいと考えています。

2 つのフィールドを含むオブジェクトがあるとします。そのうちの 1 つはオブジェクトでもあり、2 番目は更新したいオブザーバブルです。

function Control(elem) {
var self = this;
self.element = element;
self.calc = ko.observable();
}

次に、要素を考慮して何かを実行し、値を出す関数があります。

function Control(elem) {
var self = this;
self.element = element;
self.calc = ko.observable('10');
self.doSomething = function () {
    var dummy = 0;
    if (self.element.number() === 1) 
        dummy = self.element.value + 10;
    else 
        dummy = self.element.value + '+ 10';
    return dummy;
    }
}

要素の数値またはのプロパティのいずれかが変更されるたびに、関数によって返された結果で計算更新するにはどうすればよいですか?

calc をdummyに置き換えてcalcを直接更新したくないと言いました。これは、観察可能なトリガーが何度も発生するためです。

JsFiddle: http://jsfiddle.net/razvangl/cf3kB/

4

1 に答える 1

0

Ok。私はそれを解決しました。calcを、関数doSomethingに等しい計算されたオブザーバブルにしまし

function Control(elem) {
var self = this;
self.element = elem;
self.calc = ko.computed(function () {
    var dummy = 0;
    if (self.element.number() === 1) 
        dummy = self.element.value + 10;
    else 
        dummy = self.element.value + '+ 10';
    return dummy;
    });
}
于 2013-09-20T12:24:10.050 に答える