ngrx: как синхронизировать URL и хранить данные - PullRequest
0 голосов
/ 23 декабря 2018

Я начинаю играть с ngrx, и мне не ясна концепция синхронизации изменений, внесенных в URL для хранения.

Позвольте мне объяснить.У меня есть магазин:

{
  "company": "AAA"
}

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

Смена пользователя в раскрывающемся списке, обновление магазина, URL-адрес обновлен до /company/BBB.Компонент контейнера может видеть BBB в хранилище.

Что не ясно, как справиться с ситуацией, когда пользователь нажимает /company/BBB напрямую?Как синхронизировать это для хранения?

Ответы [ 2 ]

0 голосов
/ 23 декабря 2018

Основные понятия от NgRx:

Побочные эффекты используются для асинхронных операций с дескрипторами, как, например, HttpRequest.

Редуктор используется длясинхронизировать операции, такие как событие щелчка.

Итак, что вы можете сделать, так как @ j3ff предлагает использовать router-store (довольно излишне, если вы собираетесь использовать несколько маршрутов).Или отправляет действие для этого конкретного маршрута, когда он вызывается для упрощения обслуживания.

Использование router-store будет довольно трудоемким, если вам потребуется быстрое внедрение.

Помните, что вам больше всего подходит, для удобства чтения и простоты обслуживания вашего приложения.

0 голосов
/ 23 декабря 2018

Вы должны использовать @ngrx/router-store, который предназначен для привязки Angular router к вашему магазину.Во время каждого цикла навигации маршрутизатора отправляется несколько действий, позволяющих прослушивать изменения состояния маршрутизатора.Затем вы можете выбрать данные из состояния маршрутизатора, чтобы предоставить дополнительную информацию для вашего приложения.

См. Их документацию здесь: https://ngrx.io/guide/router-store

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