Javascript 剑道UI树视图附加函数性能
看起来以下函数的性能非常差Javascript 剑道UI树视图附加函数性能,javascript,performance,telerik,kendo-ui,kendo-treeview,Javascript,Performance,Telerik,Kendo Ui,Kendo Treeview,看起来以下函数的性能非常差 treeView.append(children, parent); 这里的treeView是KendoUITreeView,父节点是子节点的容器节点,子节点是大约150个新节点的数组(我的场景) 这段代码执行时间超过7秒 我猜append函数对于一组项没有很好地实现,因此通过jQuery生成html可能有一些变通方法,但是Kendo UI Treeview还应该了解新节点,以便正确处理新节点的未来扩展事件。 有没有办法提高上述代码的性能 谢谢,, Ihor性能是一
treeView.append(children, parent);
这里的treeView是KendoUITreeView,父节点是子节点的容器节点,子节点是大约150个新节点的数组(我的场景)
这段代码执行时间超过7秒
我猜append函数对于一组项没有很好地实现,因此通过jQuery生成html可能有一些变通方法,但是Kendo UI Treeview还应该了解新节点,以便正确处理新节点的未来扩展事件。
有没有办法提高上述代码的性能
谢谢,,
Ihor性能是一个相当相对的术语。当然,如果需要7秒,这不是一个好的表现。在我的计算机中,添加150个新节点花费了大约1秒的时间,但无论如何,我可能会建议您进行一些改进 如何一个接一个地追加节点
for (var i = 0; i < 150; i++) {
var added = { text:"node" + i };
tree.append(added, parent);
}
在我的电脑里,它从1105ms上升到787。没有那么多,但是
但是,这是插入节点的时间,而不是渲染所需的时间。您的问题是追加还是显示在屏幕上?对于遇到此问题的人: 最后,我研究了剑道UI源代码,并使用了以下代码,而不是原始帖子中的行:
treeView.dataItem(parent).children.data(children)
在我的场景中效果很好。是的,只有一行(来自我的原始帖子)执行7秒。事实上,我试了你们的两个样品,而且两个都是同时试的。我对剑道源代码进行了一些调查,发现下面这行代码执行得更快,treeView.dataItem(parent.children.data(children))如果使用这种方法,您能回答可能出现的问题吗?
treeView.dataItem(parent).children.data(children)