3

我为比较角度和剔除创建测试:

    items = self.items();
    // ...
    self.items.valueHasMutated();

http://jsfiddle.net/imbolc/z7bkz/9/embedded/result/

这个测试正确吗?你知道提高 KO 填充速度的方法吗?

4

1 回答 1

2

我没有彻底比较不同测试之间的逻辑,但我知道 Chrome 处理文本节点的方式存在一些问题,如下所述:https ://github.com/SteveSanderson/knockout/issues/793

如果您从内联 KO 模板中去除文本节点,那么您会看到 Chrome 的性能有很大提升。

像:

<ul id="ko-list" data-bind="foreach: items"><li>ko: <span data-bind="text: val"></span></li></ul>

更新示例:http: //jsfiddle.net/rniemeyer/tsTmZ/

最新 Chrome 中的示例结果:

jQuery:45 毫秒 74 毫秒

角度:171 毫秒 199 毫秒

淘汰赛:109 毫秒 25 毫秒

于 2013-05-13T13:00:28.540 回答