это надо смотреть на данные
У меня список товаров, сортировка по количеству проданных, но во время перехода по страницам данные изменяются и получается каша
Один товар может появляться и на 1, и на 2, и на 3 странице Данные, по которым идёт сортировка, быстро меняются
Ну вот вы перешли на 3 страницу. У вас что то добавилось, что должно быть показано на 1. Какой алгоритм? Это нормально, когда появляются или удаляются данные, подпадающие под условия, что страницы будут прыгать. Стейт не постоянный у вас.
Ага. очень удобно: посмотрел потихоньку выдачу, нажал "дальше" и смотришь на ту же самую выдачу, пытаясь понять "Это лыжи не едут или что похуже со мной произошло?".
разные реализации есть. где-то "Влево-вправо", где-то нумерованные страницы. как по-мне, если ты находишься на второй странице, кто-то в другом окне добавляет что-то, что должно показаться на первой странице, и ты, переходя на 1 страницу не видишь этого, пока F5 не нажмёшь - такое себе...
Я бы сделал выделение цветом тех итемов, которые уже ранее показывали на другой странице. Если сортировка по количеству, и это количество сразу показывается, то можно в скобках показать старое количество. Технически это можно организовать так (но можно и по-другому): * пажинация без кеширования, каждую страницу заново вычисляет СУБД * на клиенте запоминаем всё, что показывали ранее, например HashMap<item_id, (page#, sorting_key)>
А как быть с айтемами, которые ещё не показывались, но уже сползли на 1 страницу, которая показывалась?
На месте оператора я могу хотеть 2 разных вещей: 1) просмотреть все топ 100, ни одного не пропустить, желательно каждый увидеть ровно 1 раз 2) видеть точные места в моменте, например, с 11 по 20 место Под эти 2 разные задачи придётся 2 разных интерфейса. Первая задача мне более понятна.
Обсуждают сегодня