Данные таблицы с сортировкой, поисковым запросом, пагинацией передаются различным компонентам в Angular
Я постараюсь объяснить как можно проще.
Есть таблица, которая в начале получает первые 30 строк из n строк и имеет сортировку, поиск с использованием мат-таблицы. Таким образом, даже если она отсортирована, будут отправлены только первые 30 строк, и когда пользователь переходит на следующую страницу, он получает следующие 30 строк из бэкенда, каждый раз делая новый запрос.
Теперь у каждой строки есть кнопка, которая ведет на другой компонент, который получает подробные данные о конкретной строке.
Этот компонент имеет функцию предыдущей и следующей строки, которая позволяет получить подробный просмотр данных следующей или предыдущей строки в том же порядке, в котором они отображаются в таблице (сортировка, результат поиска, номер страницы).
В настоящее время строки таблицы создаются снова в бэкенде (Django) со всеми параметрами сортировки, поиска и другими параметрами, затем находится текущая строка и отправляется следующая и предыдущая строка (потребуется минимум 5 обращений к БД).
.
Следовательно, это очень медленно.
Во Frontend я могу передавать данные только этой страницы, что вызовет проблемы на следующей или предыдущей странице.
Как правильно решить эту проблему...
Обычные пользовательские интерфейсы поиска не фокусируются на 30 строках за один раз. Вместо этого они сначала выполняют поиск по всему набору данных, а затем "расставляют страницы" результатов. (Или это то, что вы хотели сказать?)
Есть детали, которые могут позволить обработке работать быстро, а могут быть детали, которые препятствуют скорости. Пожалуйста, расскажите подробнее о структуре таблицы и возможных критериях поиска.