const Leaf = ({ id }) => <Tree.TreeNode title={doing something dynamic here} />
...
<Tree>
{ instances.map(instance => <Leaf key={instance} id={instance} />) }
</Tree>
Похоже, что муравьиное дерево не ориентировано на динамические/компонентные компоненты. Невозможно вернуть узел дерева, не столкнувшись с такими ошибками, как TypeError: props.filterTreeNode is not a function
.
Я не знаю, как это решить. Каждый листовой компонент должен быть реактивным, я не могу заранее получить все вложенные данные, если только я не визуализирую все дерево для каждого изменения, что невозможно из-за проблем с производительностью.
Привет @drcmda , TreeNode
не может быть составлено с текущей архитектурой.
Измените свой код на:
<Tree>
{ instances.map(instance =>
<Tree.TreeNode key={instance} title={doing something dynamic here} />)
}
</Tree>
@yesmeck Боюсь, это невозможно, потому что это означало бы, что мне нужно заранее иметь вложенную структуру, но только вложенные компоненты знают свои подкомпоненты (они привязаны к состоянию). Однако в итоге я написал свое собственное дерево. Я надеюсь, что однажды это будет решено. :)
@yesmeck @benjycui @warmhug
Есть ли шанс, что TreeNode станет автономным и компонуемым классом? Поскольку Tree
и TreeNode
являются отдельными классами в rc-tree
, это должно быть возможно, или я ошибаюсь?
Я был бы очень признателен, если бы TreeNode
был отдельным классом, так как он предлагал бы множество возможностей и был бы более «реактивным».
Самый полезный комментарий
@yesmeck @benjycui @warmhug
Есть ли шанс, что TreeNode станет автономным и компонуемым классом? Поскольку
Tree
иTreeNode
являются отдельными классами вrc-tree
, это должно быть возможно, или я ошибаюсь?Я был бы очень признателен, если бы
TreeNode
был отдельным классом, так как он предлагал бы множество возможностей и был бы более «реактивным».