Angular 2 обновляет представления об изменении значения локального хранилища - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть навигационная панель, которая печатает имя и фамилию пользователя. Обе эти переменные взяты из локального хранилища компонента init. У меня есть модал, в модале я могу изменить имя и фамилию зарегистрированного пользователя и снова поместить их в локальное хранилище. Если я изменю их успешно, я хочу обновить навигационную панель с новым именем и фамилией.

Модал и панель навигации - это два разных компонента.

Как мне этого добиться?

Решение 1: Я думал изменить вручную переменные, пока пост новых данных (имя и фамилия) был успешно выполнен. Могу ли я изменить переменные другого компонента (панели навигации) из модального?

Решение 2: вызовите location.reload для принудительного автоматического обновления всего представления новыми данными в локальном хранилище.

Решение 3: использование магазина

Спасибо

1 Ответ

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

Создать сервис-оболочку для получения / настройки локального хранилища, который также будет выдаваться при настройке. Модальные вызовы, скажем, this.storageService.setItem('foo', 'bar'), а навигационная панель подписалась this.storageService.changes$.

Хотя при записи чего-либо в хранилище происходит событие, оно отправляется только в другие окна того же домена.

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