D3.js enter () data () remove () exit () - PullRequest
       12

D3.js enter () data () remove () exit ()

0 голосов
/ 13 февраля 2019

Я прочитал документы bl.ocks и изо всех сил (много раз) пытался сохранить данные, используемые в моем дереве d3.

Я использую это в качестве базового кода , который теперь управляется SQL.

Я создал код с помощью «Coderino», который проходит через каждый узел и возвращает его родительско-дочерние отношения (см. Ниже)

d3.selectAll('g.node')

.each(function(p){
p.children.map(function(c) {        
    alert( c.name +"("+ c.id+")"+ "- PARENT TO -" + p.name + "(" + p.id +")" )

     });    
});

Однако , когдаЯ удаляю или добавляю узел, который не регистрирует его в children.map.

Я пытался вставить node.exit (). Remove ();. Link.exit () удалить ();в код для обновления узлов, похоже, это тоже не влияет.

Кто-нибудь знает, есть ли простая функция, которую я мог бы вызвать, а затем запустить цикл, который мне нужно включить новые узлы?

НО если я запускаю этот цикл

d3.selectAll('g.node')

.each(function(p){
    alert( p.name  )

});

Он видит новые имена - так может быть, это файл p.children.map, который нужно как-то обновить?(Как бы мне этого добиться !!)

Дальнейшее тестирование показывает, что IF вы добавляете к основному узлу (узлу 1), функции будут читать новый узел, но добавляя его к любому дочернему узлу.не увидит их ...

Спасибо, что прочитали это и любую помощь, комментарии будут высоко оценены.

...