У меня есть приложение Angular 5, которое состоит из нескольких функциональных модулей.Каждый модуль отвечает за ресурсы конкретной страницы и загружается с отложенной загрузкой.
src/
|--app/
|--core/ <-- core functionality here
|--landing/
|--store/
|--about-us/
Для каждого модуля у меня есть компонент страницы верхнего уровня, который подключается к хранилищу и очень похожим образом извлекает данные по страницам.
landing.component.ts
this.store.pipe(select(getDataForThisPage));
...
this.store.dispatch(new PageAction.FetchData());
Таким образом, каждый компонент страницы извлекает данные из серверной части и помещает их в собственное хранилище функций.
Проблема здесьчто а) действия, б) эффекты и даже форма магазина редуктора очень похожи для всех функциональных модулей.Поэтому в идеале я хочу повторно использовать хотя бы действия, но если это возможно, эффекты / хранилище тоже.
Каков наилучший способ сделать это?