define в tree модифицирует данные

http://webix.com/snippet/3f9a2a69

Посмотрите, что остается от входящих данных (в консоли) в tree_data после define(‘data’, tree_data) - структура входящих данных tree_data ломается.

Вероятно это ошибка. Обойти это конечно можно, но наверно так не должно быть.

Сейчас приходится пользоваться не самым “красивым” способом клонирования данных для дерева:

.define(‘data’, JSON.parse(JSON.stringify({data: TREE_DATA})).data)

Это известная проблема. При загрузке данных надо делать выбор между “быстро но с модификациями” и “чуть медленнее, но без модификаций”. Сейчас используется первая стратегия ( скорость работы обычно важнее чем сохранение передаваемых данных )

Вместо JSON.parse можно использовать

tree.define('data', webix.copy(tree_data) );

ну или еще короче

tree.parse( webix.copy(tree_data) );

Хорошо, учту.

А это касается всех компонентов?

Только tree и treetable - тех где есть иерархические данные

Ок, спасибо.