У меня есть несколько модулей в моем приложении Angular2, которые предоставляют услуги и конфигурацию.
Теперь я хотел бы включить @ngrx/store
, который собирает доступные редукторы из моих модулей.
Вот загрузочный код:
import {OpaqueToken} from 'angular2/core'
import {provideStore} from '@ngrx/store'
export const REDUCER_TOKEN = new OpaqueToken('Reducer');
bootstrap(AppComponent, [
provide(REDUCER_TOKEN, { useClass: Module1Reducers, multi: true }),
provide(REDUCER_TOKEN, { useClass: Module2Reducers, multi: true }),
// old code: provideStore({module1, module2}, {module1:{}, module2:[]})
provideStore(/* INSERT CODE HERE */)
]);
Комментарий INSERT CODE HERE
следует заменить чем-то, что использует все REDUCER_TOKEN
провайдеры.
Как я могу этого добиться?
provide(REDUCER_TOKEN, ...)
? Это провайдер, который можно использовать вместе с@Inject(REDUCER_TOKEN) list:MyInterface[]
. Посмотрите здесь ( blog.thoughtram .io/angular2/2015/11/23/ ), раздел Общие сведения о мультипровайдерах. - person Benjamin M   schedule 31.03.2016