2017-02-17 2 views
2

Я работаю над примером приложения Angular 2, и я планирую использовать @ ngrx/store и @ ngrx/effects для управления состоянием.Управление состоянием с использованием ngrx/store и ngrx/effects в Angular 2

Это пример приложения имеет корневой модуль и несколько функциональных модулей.

Теперь мои вопросы.

  1. Могу ли я импортировать StoreModule и EffectsModule во всех моих функциональных модулей ИЛИ Если они будут импортированы только один раз в корневом модуле?

  2. Для того, чтобы импортировать один файл эффектов в модуле я написал ниже строки кода в модуле файла

    EffectsModule.run(AuthorEffects) 
    

    Что делать, если есть несколько файлов эффект?

ответ

0

Большую часть времени он должен быть импортирован в корневой модуль. Похоже, что ngrx имеет решение в бета-версии v3 для обеспечения динамической функциональности редуктора:

https://github.com/ngrx/store/pull/269

Насколько несколько эффектов, вам нужно будет позвонить EffectsModule.run() для каждого эффекта.

+0

Например, у меня есть приложение, разделенное на несколько модулей функций (по одной на страницу), и каждая страница должна объявлять некоторые эффекты, если я добавлю каждую страницу EffectsModule.run (AuthorEffects) и перемещаюсь между 3 страницами, активен после того, как я покинул страницу? – Nicu

+0

Если у меня есть действие с копией, которое вызывает различные эффекты на разных страницах, на другой странице действие копирования должно иметь другое имя? Если служба не запускается после удаления страницы, я могу использовать одно и то же действие для разных эффектов. Я пытаюсь найти, как лучше всего создавать разные действия для каждой страницы или повторно использовать имена действий на разных страницах. – Nicu

+1

Если вы только предоставляете хранилище в корневом модуле, вы должны зарегистрировать все эффекты там. – JusMalcolm

Смежные вопросы