J'apprends actuellement D3.js et je joue un peu avec. Actuellement je travaille sur un arbre, ce qui est plutôt sympa et facile à faire statiquement. Comme j'essaie d'éviter de simplement "copier coller" des exemples qui sont déjà là, et d'essayer de lire les docs, ... eh bien, je fais face à pas mal de 'problèmes', et je ne peux pas semble résoudre celui-ci.Un arbre pliable dans D3.js
Here's a fiddle d'un arbre simple, petit et pliable. Les liens ne sont pas encore effondrés. Ce serait la prochaine étape et pas pertinent en ce moment.
L'effondrement du noeud racine fonctionne comme prévu. Tous les nœuds enfants disparaissent. Mais en cliquant sur l'un des nœuds du milieu qui n'a qu'un seul enfant, c'est toujours le même enfant qui disparaît ... et je ne vois pas pourquoi.
Click
appels click
avec le nœud cliqué comme argument. Au sein de click
, toggleChildren
est appelée, avec le nœud cliqué comme argument à nouveau. Et toggleChildren
stocke l'ancien état et fixe les enfants à null
... sur le nœud cliqué ... c'est ce que je pensais au moins ;-)
putain je viens de trouver cette erreur: P – thatOneGuy
Great! Ça sonne bien. Ce que je ne comprends pas bien, ... pourquoi ai-je besoin de lier un identifiant aux nœuds? Je veux dire, ... les données de l'arbre sont manipulées par 'toggle' de telle sorte que 'enfants' du noeud cliqué est nul, ... alors pourquoi cela ne suffit-il pas? – inzanez
Pour comprendre cela, s'il vous plaît chercher "constance de l'objet" (je suis sur mon portable maintenant, terrible de partager des liens). –