2017-03-31 137 views
4

我使用D3 v4来构建树。将节点添加到D3树v4

小提琴: https://jsfiddle.net/a6pLqpxw/

我现在想添加用于从选择的节点动态地添加(和删除)儿童的支持。

但是我不能让图表重绘,而不必执行完整的重绘。我修改了可折叠树形图代码中的代码:https://bl.ocks.org/d3noob/43a860bc0024792f8803bba8ca0d5ecd

具体来说,以下代码块不会为其子代执行布局的重新计算。

document.getElementById('add-child').onclick = function() { 
    console.log(selected); 
    selected.children.push({ 
    type: 'resource-delete', 
    name: new Date().getTime(), 
    attributes: [], 
    children: [] 
    }); 

    update(selected); 
}; 

有没有人有任何动态添加/删除节点树的D3.js v4的好例子?

回答