Вложенные в таблицу компоненты реагирующей виртуализации приводят к очень низкой производительности - PullRequest
0 голосов
/ 11 февраля 2020

Я хочу использовать виртуализацию из библиотеки реагирует на виртуализацию . То, что я пытаюсь построить, это список складных строк, каждая из которых содержит вложенные таблицы. До сих пор я создал «родительский» реагирующий виртуализированный List компонент с вложенными Table компонентами в каждой строке: CodeSandbox

Основная проблема, с которой я сталкиваюсь, это огромная производительность, когда внутренние таблицы начинают увеличиваться, поскольку у нас есть несколько внутренних таблиц с 3000+ строками. Прокрутка становится непригодной для Safari, но, кажется, она прокручивается без особых проблем на Chrome.

Другая проблема заключается в том, что свертывание этих строк List происходит быстро, но повторное их открытие может занять до 5 секунд, прежде чем все

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

Единственный подход, который я могу придумать для решения этих проблем, - это избавиться от внутренних компонентов Table и просто отобразить каждую запись как другую строку в родительском List, мне просто нужно выполнить специальный случай рендеринга. для каждой строки заголовка.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...