Получение ошибки - NullInjectorError: Нет поставщика для NgRedux! при интеграции редукционной реализации - PullRequest
0 голосов
/ 01 ноября 2018

Я модифицировал существующий проект для реализации редукционной реализации. Внес изменения кода и обнаружил приведенную ниже ошибку при компиляции Согласно учебному материалу, на который я ссылался, ngRedux не нужно добавлять в провайдеров. После добавления его к поставщикам, все еще появляется ошибка.

 **AppModule.ts**
    //Activation of store.
    import {NgRedux , NgReduxModule} from '@angular-redux/store';
    import {IAppState,INITIAL_STATE,rootReducer} from '../store';
    //Other Imports here 
    @NgModule({
      declarations: [
        AppComponent,
        ViewallComponent,
        WorkoutComponent,
        CategoryComponent,
        TrackComponent,
        TestComponent,
        CategoryPipe,
        ActiveworkoutComponent,
        WorkoutPipe,
      ],
      imports: [
        BrowserModule,
        AppRoutingModule,
        FormsModule,
        ReactiveFormsModule,
        HttpModule,
        FusionChartsModule.forRoot(FusionCharts, Charts, FintTheme)
      ],
      providers: [
        WorkoutService,
        CategoryService,
        ActiveworkoutService
      ],
      bootstrap: [AppComponent]

    })

    export class AppModule { 
      constructor (ngRedux: NgRedux<IAppState>) {
           ngRedux.configureStore(rootReducer, INITIAL_STATE);
        }

    }

Внесены соответствующие изменения в компонент и сохранены файлы.

Ошибка:

Error: StaticInjectorError(AppModule)[AppModule -> NgRedux]: 
  StaticInjectorError(Platform: core)[AppModule -> NgRedux]: 
    NullInjectorError: No provider for NgRedux!
Stack trace:
./node_modules/@angular/core/fesm5/core.js/NullInjector.prototype.get@http://localhost:4200/vendor.js:33896:19
resolveToken@http://localhost:4200/vendor.js:34133:17
tryResolveToken@http://localhost:4200/vendor.js:34077:16
./node_modules/@angular/core/fesm5/core.js/StaticInjector.prototype.get@http://localhost:4200/vendor.js:33974:20
resolveToken@http://localhost:4200/vendor.js:34133:17
tryResolveToken@http://localhost:4200/vendor.js:34077:16`enter code here`

1 Ответ

0 голосов
/ 01 ноября 2018

Вам необходимо добавить NgReduxModule при импорте module.ts

imports: [
    NgReduxModule
]
...