1

我这里有个大问题。

我有一个计算变量,它在可观察数组发生变化后得到更新。

问题是在计算变量被评估之后,我需要使用新的计算值更改可观察数组值。

我怎样才能做到这一点?

我的第一种方法是创建一个函数,该函数将订阅计算变量并对那里的 observable 进行所有必要的更改。问题?这将导致 observable 再次更新,这将再次通知计算。

我有一个循环依赖。

我不知道如何解决这个问题。

请问有什么想法吗?

4

1 回答 1

0

我已经解决了这种问题,使用订阅。我有两个可观察的数组,每个数组都有可观察的。我订阅了另一个,它对我有用。这是有关如何通过可观察数组订阅的示例。

self.teams.subscribe(function() {
            ko.utils.arrayForEach(self.teams(), function(item) {
                item.player.subscribe(function(newValue) {
                    if (self.teams() != "" && self.teams() != null) {
                        ko.utils.arrayForEach(self.GroupofTeams(), function (team) {
                            ..........code.....
                        });
                    } 
                });
            });
        });
于 2013-09-10T08:59:19.077 回答