Mam scenariusz, w którym chcę użyć sprzężenia danych, aby dołączyć 2 nowe elementy dla każdego elementu danych.Czy wybór Enter() może być ponownie użyty po dodaniu/wstawieniu?
ja pierwotnie robi coś takiego:
var y = d3.selectAll("line")
.data([123, 456]);
y.enter().append("line"); // assume attr and style set
y.enter().append("line");
y.transition()...
Przed Myślałem, że to przez, spodziewałem się, że wybór Aktualizacja używany w moim przejściu będzie zawierać połączone dołącza od wyboru wejść. Ale oczywiście to nie zadziałało, ponieważ w danym elemencie danych jest tylko jeden slot.
Więc zmieniono kod tak, że wciąż używał tej samej selekcji enter() dwa razy, ale potem ponownie wybrał dla nowych elementów w celu dokonania przejścia.
To podejście zadziałało, ale moje pytanie brzmi, czy jest to zalecany sposób postępowania. Czy powinienem się upewnić, że przestaniesz używać funkcji enter() po dodaniu/wstawieniu? Czy jest to w porządku, użyj go do tworzenia wielu elementów, o ile pamiętam, że wybór aktualizacji będzie zawierał tylko te elementy, które zostały utworzone jako ostatnie?
Jeśli okaże się, że to pomyłka, jaki jest lepszy sposób na osiągnięcie tego?