KO 计算递归调用

KO Compute called recursively

本文关键字:调用 递归 计算 KO      更新时间:2023-09-26

我有两个下拉框。我在第一个下拉列表的 ko 计算上填充第二个下拉框。 我有两个列表,一个填充了下拉列表中所选项目的所有可用值。对于右侧列表,用户可以从左侧选择值,以免由ko计算函数填充,当第一个或第二个下拉列表中的值发生变化时,我需要清除seletedItems数组(从右侧列表),现在左侧列表带有新值我尝试选择右侧列表中的值, 但是每次选择数组 seletedItems 都会调用 ko 计算(我在 ko 计算中使用 removeAll 清除了它),不知道为什么会发生这种情况。提供任何帮助。

谢谢

前言:我同意Niko和Paolo del Mundo的观点。如果您包含代码片段,我们将能够更好地为您提供帮助。


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

  • 如果是这种情况,那么我建议您简化挖空虚拟机代码。
  • 重构,并支持手动订阅。

  • 尽管它们具有表现力和力量,但computed功能可能很棘手。
  • 如果创建太多它们,则可能很难预测何时调用它们。
  • 对于足够大的数据集,IE 8 及更早版本将使用运行缓慢的脚本警告标记过于复杂的 Knockout 代码。