Dziedziczenie w łączeniach danych
Szybkie pytanie o łączenie danych. Powiedz, że mam kilka elementów, z których każdy zawiera. Kiedy początkowo łączę dane z, jest automatycznie dziedziczone przez elementy, które dołączam do wyboru wejścia.
Kiedy dane zostaną zmienione i powiążę je, spodziewałem się, że elementy będą odbierać nowe dane, ale tak się nie stało.
Aby sobie z tym poradzić, musiałem wyraźnie powiązać dane na niższym poziomie, jak poniżej:
<code>gElements.selectAll("circle") .data(function(d) { return [d]; } .enter().append("circle"); </code>
To obsługuje zarówno przypadek tworzenia, jak i późniejsze ponowne wiązanie. Wydaje się jednak, że jest to zbyteczne, ponieważ zwracanie [d] jest zasadniczo tym, co dzieje się automatycznie z początkowym dziedziczeniem danych z elementu macierzystego.
Czy to podejście jest właściwym sposobem na poradzenie sobie z tym, czy też gdzieś tu się mylę?