JavaScript InfoVis Toolkit SpaceTree порядок узлов

Я использую InfoVis SpaceTree для визуализации дерева. Полное дерево загружается за один вызов метода loadJSON. Дочерние элементы каждого узла уже находятся в правильном порядке. Но узлы отображаются не в том порядке, в котором они определены в структуре данных, то есть в соответствии с индексом их массива.

Как я могу сделать так, чтобы они отображались в правильном порядке? Любая помощь будет принята с благодарностью.

1 ответ

Дерево не отображает узлы в зависимости от их порядка в структуре данных JSON / индексе массива.

Вместо этого он основан на атрибуте id, который используется в качестве ключа для хранения узлов во внутреннем хэше (ну, технически, объект). Обратите внимание, что это хеш, а не массив, поэтому порядок не имеет значения.

Узел с идентификатором 100 всегда будет отображаться перед узлом с идентификатором 101. Если вы хотите, чтобы дочерние узлы вашего узла отображались в определенном порядке, убедитесь, что ваши дочерние узлы отсортированы по идентификатору.

Другие вопросы по тегам