我有两个下拉框。我在第一个下拉列表的ko计算中填充第二个下拉列表框。我有两个列表,其中一个填充了下拉列表中所选项目的所有可用值。在右边的列表中,用户可以从左侧选择值,以免由ko计算功能填充,一旦在第一个或第二个下拉列表中更改了值,则需要清除seletedItems数组(从右侧开始)列表),现在是新值的左侧列表,我尝试从右侧列表中选择值,但是对数组seletedItems(我在ko计算中用removeAll清除的)的每个选择都调用了ko计算。正在发生。请寻求任何帮助。

谢谢,

最佳答案

前言:我同意NikoPaolo del Mundo。如果您包含代码片段,我们将可以为您提供更好的帮助。




话虽如此,您表示您的computed函数意外地递归调用了自己。


如果是这种情况,那么我建议您简化Knockout VM代码。
重构并支持手动订阅。





尽管它们具有表现力和功能,但computed函数还是很棘手的。
如果创建的对象过多,则很难预测何时调用它们。
有了足够大的数据集,IE 8和更早的版本将使用slow running script warning标记过于复杂的Knockout代码。

10-06 09:32