我正在使用knockout.js。我有一种情况,我有一个项目集合,每个项目都有一个可观察的布尔isleader。其中一个人可以一次活动。如果人们将集合中的项目与另一个集合中的项目进行交换,那么我会检查旧项目是否为真,如果是,我将其设置为新项目。这很好用。现在我需要添加第二个输入机制,它是一个下拉列表,绑定到集合以显示集合中的所有项目。我想要将isleader设置为true的集合中的一个项目作为选定项目,如果所选项目已更改,我希望更新isleader以反映这一点。
如果不在下拉列表和不断更新所选项目的集合之间创建无限循环,我该怎么做呢。
答案 0 :(得分:0)
你可以看一眼。
this.selectedItem.peek()
而不是
this.selectedItem()
正如你可以做的那样。
两者都将返回fields值,但第一个将在不创建依赖项的情况下执行。换句话说,peek将获得该值,但它不会订阅它。