如何根据用户选择的深度折叠D3JS树?

时间:2018-11-02 08:52:06

标签: javascript performance d3.js

我有一个D3JS树,需要根据用户选择的级别折叠它。有一个带有级别的下拉菜单(使用Select2),用户可以从中进行选择。

我能够做到这一点,但是,问题是调用折叠函数时(扩展工作正常)会有几秒钟的延迟。这是我在做什么:

$("#drop_down_levels").on("select2-selecting", function(e) {                
        var nodes = tree.nodes(root).reverse();
        nodes.forEach(function(d) {
            if (d.depth >=e.object.id){
                 d._children = d.children;
                 d.children = null;
            }else{
                expand(d);
            }
            update(root);
            centerNode(root);
        });
    })

有没有一种可以对此进行优化的方法?预先非常感谢。

0 个答案:

没有答案