0

ajax リクエスト (非同期 ajax リクエスト) の後に計算されたオブザーバブルでオブザーバブルの値 (フィルター) を更新する必要がありますが、計算されたオブザーバブルを更新すると、計算されたオブザーバブル (filterChanged) はこのオブザーバブル (フィルター) に依存し、計算で無限ループが発生しましたか?

計算されたオブザーバブルで依存オブザーバブルを更新するにはどうすればよいですか?

function vm(){
    var self = this;
    self.filter = ko.observable();
    self.isOpenFilter = ko.observable(false);

    self.result = ko.obseravableArray([]);

    self.filterChanged = ko.computed(function(){
            var data = {filter:self.filter(),isOpen:self.isOpenFilter()}


        $.ajax("/service",data,function(response){
            self.result(ko.mappings.fromJS(response.results);
            self.filter(response.filter);   // infinite loop
                    self.isOpenFilter(response.isOpen);
        });
    });
}
4

1 に答える 1