@ ngrx / store не работает на ng serve -prod - PullRequest
0 голосов
/ 13 июня 2018

NgRx хорошо работает на подаче в режиме разработки ng serve, но когда подача в режиме производства ng serve -prod или buid ng build --prod ngrx больше не работает.

пример репозитория приложений

1 Ответ

0 голосов
/ 13 июня 2018

В соответствии с документацией по состоянию NGRX.Это правильный формат для решения проблемы сборки AOT, с которой вы сталкиваетесь.

"Раньше для совместимости с AOT требовалось передать функцию в метод provideStore, чтобы объединить редукторы в один корневой редуктор. InitialStateбыл также предоставлен методу в качестве объекта во втором аргументе. "

" Это было упрощено, и теперь требуется только карта редукторов, которые будут составлены библиотекой. Второй аргумент - это объект конфигурации, в которомВы предоставляете initialState. "

Их пример выглядит следующим образом: Reducer index.ts:

import { ActionReducerMap } from '@ngrx/store';

export interface State {
  auth: fromAuth.State;
  layout: fromLayout.State;
}

export const reducers: ActionReducerMap<State> = {
  auth: fromAuth.reducer,
  layout: fromLayout.reducer,
};

А в вашем app.module:

import { StoreModule } from '@ngrx/store';
import { reducers } from './reducers';

@NgModule({
  imports: [
    StoreModule.forRoot(reducers, {
      initialState: {
        auth: {
          loggedIn: true,
        },
      },
    }),
  ],
})
export class AppModule {}

Я думаю, что вашв коде отсутствует объявление начального состояния, позволяющее механизму компиляции AOT правильно определить, что вы пытаетесь определить при сборке.

...