2014-12-30 3 views
0

Я ищу способ получить все загруженные узлы из хранилища деревьев, даже те, чьи родители COLLAPSED. Сейчас хранилище содержит только «видимые» записи, т. Е. Все узлы, которые являются либо расширенными, либо листовыми узлами. Есть ли способ получить все загруженные узлы (даже листовые узлы, чьи родители рухнули)? Кажется, нет никакого метода, который возвращает такой массив.Получение всех загруженных узлов из дерева ExtJS

ответ

1

Это поведение асинхронного дерева по умолчанию: он загружает только детей, когда пользователь расширяет родительский элемент. Вы должны отправить полное дерево с сервера, чтобы получить доступ ко всем узлам через хранилище деревьев.

+0

Дети на самом деле загружены, но родительский обрушен. Сценарий: у меня есть родительский узел с именем parent1. Я расширяю его. Сервер приносит дочерние узлы и т. Д. Я редактирую некоторые дочерние узлы, так как они являются узлами. Затем я разбиваю parent1 и перехожу к parent2 и т. Д. После того, как я отредактировал все листовые узлы, я хочу иметь доступ ко всем ранее загруженным, но теперь свернутым родительским узлам и их детям. Они не теряются, поскольку, когда я повторно разворачиваю родителя, серверный вызов отсутствует, а состояние листового узла остается тем же (т. Е. Они отмечены или не отмечены). – Konstantine

+0

Затем вы можете найти их все в магазине, или вы можете итерации из корня с помощью метода 'cascade'. – Saki

+1

Я не пробовал 'cascadeBy', но оба' getData() 'и' eachChild' приносят только «видимые» узлы, а не дочерние члены свернутых родителей. – Konstantine

Смежные вопросы