0

我正在尝试使用旧版本的 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,
    ]),

没有数据存储在根级别,就像appauth现在一样。

错误是由依赖项(例如 zone.js)还是由我如何设置商店引起的?

Redux 开发工具 2.17.0

4

1 回答 1

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"
于 2020-02-19T15:08:50.907 回答