Я изучаю ngRx Store и, следовательно, создаю небольшой проект с использованием ngRx / Store, Effects.Приложение состоит из двух частей. Одна имеет дело с книгами, а другая - с записями. Для части книг данные выбираются синхронно и, следовательно, не имеют проблем, связанных с ними.В разделе «Сообщения» я собираюсь асинхронно получать данные из внешнего API с помощью ngRx / Effects.Но когда я просто пишу эффект «голые кости» и пытаюсь подключить его в своем app.module.ts, я получаю эту ошибку.
Ниже мой App.module.ts
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import {ReactiveFormsModule} from '@angular/forms'
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { BookListComponent } from './components/book-list/book-list.component';
import { StoreModule } from '@ngrx/Store';
import { AddBookComponent } from './add-book/add-book.component';
import { PostListComponent } from './post-list/post-list.component';
import {HttpClientModule} from '@angular/common/http'
import { EffectsModule } from '@ngrx/effects';
import { PostEffects } from './Effects/posts.effects';
import { reducers } from './Store/app.reducer';
@NgModule({
declarations: [
AppComponent,
BookListComponent,
AddBookComponent,
PostListComponent,
],
imports: [
BrowserModule,
AppRoutingModule,
ReactiveFormsModule,
HttpClientModule,
StoreModule.forRoot(reducers),
EffectsModule.forRoot([PostEffects]),
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
Это минимальные эффекты, которые я собрал вместе.
import { Injectable } from '@angular/core';
import { Effect, Actions } from '@ngrx/effects';
@Injectable()
export class PostEffects {
@Effect()
getPosts ;
constructor(private actions$: Actions) {
}
}
это редуктор состояния моего приложения
import { State } from '../reducers/books.reducers';
import { postState } from '../reducers/posts.reducers';
import { ActionReducerMap } from '@ngrx/Store';
import * as bookListReducer from '../reducers/books.reducers';
import * as postListReducer from '../reducers/posts.reducers';
export interface AppState {
bookList: State,
postList : postState
}
export const reducers: ActionReducerMap<AppState> = {
bookList: bookListReducer.booksReducer,
postList : postListReducer.postsReducer
}
Может кто-нибудь мне помочь? Заранее спасибо