Алгоритм динамической компоновки React DIV для создания представления box-in-box

#javascript #css #reactjs #html #user-interface

#javascript #css #reactjs #HTML #пользовательский интерфейс

Вопрос:

Я пытаюсь представить следующее на веб-странице. — это представление модели данных, иллюстрирующее объекты, атрибуты и дочерние объекты в родительской дочерней иерархии.

введите описание изображения здесь

Я думал создать универсальный компонент React, который мог бы хранить один объект данных, но затем также заставить этот же объект принимать дочерние экземпляры в виде динамического механизма.

Результатом будет представление типа вложенного окна, в котором будут отображаться все элементы и вложенные дочерние элементы.

  • дочерний div должен иметь какую-то функцию компоновки (очень похожую на функции компоновки сетки популярных фреймворков пользовательского интерфейса (material-ui, Scemantic-ui, Zurb foundation) введите описание изображения здесь

в конце «модель» будет выглядеть примерно так.

введите описание изображения здесь

Я даже не знаю, с чего начать создавать что-то подобное. Я ищу несколько идей для создания подобного пользовательского интерфейса… на более позднем этапе было бы предложено включить что-то вроде React-draggable, чтобы разрешить перетаскивание элементов.

Ответ №1:

Для целей визуализации бесконечной древовидной структуры вам может потребоваться посмотреть на использование рекурсии в React. Я нашел для вас несколько ресурсов:

По сути, вам нужно создать функцию в классе, которая возвращает экземпляр вашего класса.