Ошибка: не удается разрешить все параметры для ProductsEffects: (?,?) - PullRequest
0 голосов
/ 19 марта 2020

Я использую Angular 9, с @ngrx/store v9 и с SSR, но я просто запускаю npm start в разработке, поэтому SSR на самом деле не имеет значения.

I только что добавил NGRX Store и сделал свои действия, редукторы и эффекты для некоторых продуктов. После этого я получаю сообщение об ошибке: Error: Can't resolve all parameters for ProductsEffects: (?, ?).

Конструктор класса ProductsEffects выглядит следующим образом:

constructor(private actions$: Actions<ProductsActions>,
            private appService: AppService) {
}

Класс AppService помечен как @Injectable({providedIn: 'root'}) и actions$ должен быть введен из NGRX Store.

Вот раздел импорта из app.module:


const EFFECTS = [ProductsEffects];

...

imports: [
        BrowserModule.withServerTransition({appId: 'my-app'}),
        BrowserAnimationsModule,
        HttpClientModule,
        NgxSpinnerModule,
        AgmCoreModule.forRoot({
            apiKey: 'redacted'
        }),
        SharedModule,
        routing,
        StoreModule.forRoot(reducers, {
            metaReducers,
            runtimeChecks: {
                strictStateImmutability: true,
                strictActionImmutability: true
            }
        }),
        EffectsModule.forRoot(EFFECTS),
        StoreRouterConnectingModule.forRoot()
    ],

Вот соответствующий раздел из package.json:

"@ngrx/effects": "^9.0.0",
"@ngrx/entity": "^9.0.0",
"@ngrx/router-store": "^9.0.0",
"@ngrx/store": "^9.0.0",

Любой помощь будет высоко ценится!

1 Ответ

0 голосов
/ 19 марта 2020

Проблема была в том, что я забыл украсить класс ProductsEffects @Injectable().

...