我正在尝试使用较旧的Angular(4.1.x)和@ ngrx / store(5.2.0)来检测StoreDevTools。
已安装的zone.js版本为0.8.29
如果我按照建议的方式操作(即在StoreModule和EffectsModule之后)(app.module.ts):
StoreModule.forRoot({}),
EffectsModule.forRoot([]),
StoreDevtoolsModule.instrument({
name: 'myApp',
maxAge: 50,
}),
然后StoreDevTools崩溃
Error:
zone.js?6788:682 Unhandled Promise rejection: Object(...) is not a function ; Zone: <root> ; Task: Promise.then ; Value: TypeError: Object(...) is not a function
at new StoreDevtools (store-devtools.js?51ff:764)
所提到的js行说:
var liftedAction$ = merge(merge(actions$.asObservable().pipe(skip(1)), extension.actions$).pipe(map(liftAction)), dispatcher, extension.liftedActions$).pipe(observeOn(queueScheduler));
反之,StoreDevTols不会崩溃,但是检查员看不到那里的商店。
两个模块都接收到空数据,因为我只是将存储放置在适当的位置,而我从功能模块开始。
StoreModule.forFeature('Feature1', feature1Reducer),
EffectsModule.forFeature([
Feature1Effects,
]),
目前还没有存储在根级别的数据,例如app
或auth
。
该错误是由依赖项(例如,例如zone.js)还是由我的商店设置引起的?
Redux DevTools 2.17.0
答案 0 :(得分:0)
旧问题,但是否可以帮助任何人-升级旧应用程序以使用@ngrx/store
到4.1.1
后,我遇到了相同的错误
我必须将@ngrx/store-devtools
与其他@ngrx
部门的版本号进行匹配。
npm最初最初是在安装8.x
时安装的。部门匹配后,应用程序就可以存储好了
"@angular/core": "5.2.11",
...
"@ngrx/effects": "4.1.1",
"@ngrx/store": "4.1.1",
"@ngrx/store-devtools": "4.1.1",
....
"zone.js": "0.8.12"