используйте стратегию id / object для сохранения данных, но при этом сохраните заказ - PullRequest
0 голосов
/ 06 мая 2020

В моем погодном приложении я использую Redux в качестве менеджера состояний. У меня есть список мест с погодой, которые нужно показать в виде списка. Порядок в списке должен быть сохранен.

Я знаю, что у меня есть два способа:

1) использовать простой массив для сохранения записей о погоде, но его будет намного сложнее добавить (позаботившись о дублировании), обновить и удалить, но порядок зарезервирован

2) используйте более новую моду и сохраните список, например {1:{id:1,...},2:{id:2,...},...}, и таким образом я могу извлечь выгоду из природы объекта и добавлять, удалять и обновлять намного проще и быстрее, но, конечно, , порядок не поддерживается,

Итак, я проделал старый трюк и добавил _ к клавишам {_1:{id:1,...},_2:{id:2,...},...}, чтобы идентификаторы больше не были числовыми, поэтому порядок не изменился, НО теперь, когда мне нужно чтобы отобразить объект данных от начала до конца, у меня проблема с чтением объекта в обратном направлении.

PS Мне не нравится это предложение, в котором говорится о сохранении данных в объекте, а затем о порядке идентификаторов в другом массиве, поскольку это не имеет смысла для меня, поскольку для сравнения требуется больше работы с помощью простого массива, содержащего все данные. Однажды я тоже хотел использовать этот new Map(), но обнаружил, что это не рекомендуется людьми Redux,

Итак:

1) любая новая стратегия в сообществе, чтобы получить выгоду от идентификатора / объекта

2) если вы думаете, что я должен придерживаться своего _ трюка, как я могу отобразить объект от последнего добавленного элемента к первому?

...