在jsTree中使用progressive_render时节点子节点不正确

时间:2013-07-02 14:30:03

标签: javascript jstree

我做了一个小应用程序,它接受一个json字符串,将字符串转换为传递给jsTree的json对象。我的树有节点,可能有也可能没有孩子。我的节点也有不同的类型,我已经使用sort插件进行了排序。

我最初的问题是树的加载速度非常慢(特别是在FireFox中),我可以看到问题部分是由于sort插件。我在漫游互联网时发现的一个解决方案是使用jsTree JSON插件的“progressive_render”选项。这大大提高了渲染树的速度。然而,曾经没有任何孩子的节点(因此没有开/关箭头),现在有一个打开/关闭箭头,好像他们有孩子一样。如果我单击箭头打开节点,我的应用程序崩溃。我如何使用progressive_render(速度),但我的节点是否正确识别他们是否有孩子?

  function createNode(node){
    node = {
        "data" : node.name ? node.name : "",
        "attr" : {rel:node.type ? node.type : ""},
        "correct_state" : "closed",
        "children" : node.children ? node.children : []
    };
    return node;
}

谢谢, 肖恩

1 个答案:

答案 0 :(得分:0)

我发现这里记录的问题完全相同:

https://code.google.com/p/jstree/issues/detail?id=940

解决方法是让子项默认为null而不是空数组,这是一个相当悲伤的解决方法,但它可以工作。