Это моя структура кода:
app /
Core── ядро /
App └── app.reducers.ts /
App── app.component.html
App── app.component.ts
App── app.module.ts
App── app-routing.module.ts
Core── ядро /
│ ├── нижний колонтитул /
Header ├── header /
Core ├── core.module.ts
Aut── auth /
Sign ├── вход /
│ ├── регистрация /
Store ├── магазин /
│ │ ├── auth.actions.ts
│ │ ├── auth.effects.ts
│ │ ├── auth.reducers.ts
│ ├── auth.module.ts
│ └── услуги /
Admin── admin /
│ ├── панель приборов /
│ ├── настройка /
Store ├── магазин /
│ │ ├── admin.actions.ts
Admin │ ├── admin.effects.ts
│ │ ├── admin.reducers.ts
Admin ├── admin-routing.module.ts
Admin ├── admin.module.ts
│ └── услуги /
Shared── поделился /
Shared── shared.module.ts
├── компоненты /
Models── модели /
├── компоненты /
├── директивы /
Services── услуги /
Используя приведенный выше код, я структурировал свой код с помощью нескольких модулей и использовал библиотеку @ ngrx / store. Для каждого модуля у меня есть хранилище (включая: action, reducer, effect). У меня есть один главный магазин в корне для управления всеми магазинами, которые используют metareducer (импортирован из app.module.ts). Я использую регистратор для просмотра каждого
вызванное действие или измененное состояние, тогда логгер покажет текущее состояние или действие в консольном журнале.
При запуске приложения журнал консоли из браузера несколько раз показывал, что они вызваны хранилищем.
Я не знаю, почему обновления-редукторы из хранилища вызываются несколько раз.
Я ожидал сообщение журнала для каждого модуля, которое будет отображаться только один раз при инициализации модуля. Я исследовал из многих исходников, которые хранят весь редуктор в одном месте. Это хорошо для моей структуры?
Может кто-нибудь мне помочь?