Неизменяемые данные в Redux - Распространение против Object.freeze против ImmutableJs / Immer - PullRequest
0 голосов
/ 23 марта 2020

Я пытаюсь понять, почему в Redux они рекомендуют использовать Immutable JS при редактировании initialState. Я прочитал официальные документы, но все еще немного неясно. При редактировании состояния в редукторе я всегда просто использовал оператор распространения. Является ли целью использование библиотеки, такой как Immutable JS или Immer, когда вы вложили данные в Redux? Я могу сделать это с помощью оператора распространения, однако я предполагаю, что это может стать неуправляемым с большим количеством вложенных данных, и какова цель использования библиотеки? https://redux.js.org/recipes/structuring-reducers/immutable-update-patterns

Если мне следует использовать библиотеку, подобную одной из предложенных, лучше ли использовать ее, даже если состояние находится в режиме онлайн 1 уровня, или только когда данные вложены?

1 Ответ

1 голос
/ 23 марта 2020

Мы особенно рекомендуем против , используя Immutable. js и do рекомендуем использовать Immer ( желательно как часть нашего официального пакета Redux Toolkit .

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

(Обратите внимание, что мы работаем над основной перепиской основных документов Redux и будем пытаться обновить некоторые материалы, чтобы сделать их более согласованными, например, удалить страницу документов, которая обсуждается использование Immmutable. js.)

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