Как легко нормализовать данные с сервера в ngrx - PullRequest
0 голосов
/ 26 апреля 2019

Я использую шаблон ngrx / redux в своем приложении.

В статье Normalizing State Shape написано, что я должен создать «таблицу» для каждого объекта и связать их между собой посредством идентификатора.

например:

posts = [{ id, author, comments: ["commentId1", "commentId2"....] }] 
comments = [{ id: 'commentId1', comment: '..' } … ] 

Со стороны моего сервера я получаю вложенный объект,

posts: [ { id, author, comments: [ { id, comment } ] } ..]

Итак, мне нужно написать код для рефакторинга объекта, который соответствует нормализованному состоянию? для каждого массива свойства в моих объектах?

Звучит ли большая работа? Во-первых, я прав, мне нужно это сделать? Во-вторых, если это так, есть простой способ справиться с этим?

1 Ответ

0 голосов
/ 26 апреля 2019

Я недавно столкнулся с той же проблемой.В итоге я использовал NGRX Entity с разными состояниями.В вашем случае одно состояние для постов и одно для комментариев.Можно пойти дальше и нормализовать все гораздо больше, но, как вы сказали, это много работы, и я не уверен, стоит ли это того.

Я считаю учебники Тодда Мотто действительно хорошими: https://www.youtube.com/watch?v=al0LNgH3I4A

Так или иначе, вам все равно понадобится картограф, который отображает объект вашего сервера на модели, которые вы можете использовать в своем приложении.Различные селекторы могут помочь вам легко получить правильные комментарии для данного сообщения.

...