使用可观察数组时按属性跟踪

时间:2016-02-11 12:14:17

标签: knockout.js

是否有可能以某种方式添加track by track to knockout foreach binding,就像它在angular和其他一些框架中一样?

我有一个使用淘汰赛构建的实时应用。使用websocket接收数据,然后使用knockout渲染。为了简化业务逻辑,我想将websocket接收的数据更新合并到现有数据,然后将这些数据完全传递给淘汰赛。在大多数情况下,没有新元素。

在这种情况下,knockout会重新渲染整个列表还是会知道相应的DOM元素已经存在?我无法想出任何方法来检测这种情况,而无需通过指令......

1 个答案:

答案 0 :(得分:0)

  

在这种情况下,knockout会重新渲染整个列表还是会知道相应的DOM元素已经存在?

只要您更新现有的observable并将新元素推送到observableArray而不更改整个数组,Knockout将只重新呈现更新的/新元素,是的。