redux-devtools跟踪选项卡未显示操作被调用者

pn9klfpd  于 2022-11-12  发布在  其他
关注(0)|答案(4)|浏览(170)

我正在使用redux-devtools,我已经按照docs中的说明配置了我的存储,但是跟踪不显示被调用者

const composeEnhancers =
  (window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ &&
    window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__({
      trace: true,
      traceLimit: 25
    })) ||
  compose;

请帮助我如何才能获得工作代码。actual behavior
wanted behavior

8fq7wneg

8fq7wneg1#

我是一个完全的初学者,我正在经历同样的问题,而下面的教程,我遇到了这个问题,而寻找解决方案。
我通过在devServer块下的webpack.config.js中添加以下代码行,设法使跟踪行为按预期运行:

},
devServer {
// block config
},
devtool: "source-map",
// rest of config

请注意,我只是为上下文添加了额外的行-我添加的唯一一行是devtool: "source-map"
当然,在确认webpack dev服务器正在加载您刚刚在package.json中修改的config文件后,不要忘记停止并重新启动它。

50few1ms

50few1ms2#

看起来设置和堆栈跟踪功能都按预期工作。
正在显示堆栈,表示DevTools已正确设定为撷取堆栈追踪。
根据显示的堆栈跟踪,Redux Saga 中间件负责调度该操作。考虑到该中间件的内部复杂性,我并不奇怪与应用其余部分中的其他代码没有任何明显的联系。
要显示原始源代码,必须为应用的构建过程正确定义源代码Map。如果您使用Create-React-App或其他类似工具,则应该已经自动处理了。如果您以某种方式定义了自己的构建配置,则应该确保源代码Map确实正在生成。

cvxl0en2

cvxl0en23#

在设置时遇到了一些问题,因为composeWithDevTools的typescript不允许添加中间件和跟踪选项。因此,如下所示替换这两个常量帮助解决了我的问题- react 17。

const composeEnhancers = composeWithDevTools({
    trace: true,
});

const store = createStore(pReducer, composeEnhancers(middleware));
brqmpdu1

brqmpdu14#

如果您正在使用redux工具包,但没有看到代码跟踪,因为它默认设置为10。在右侧添加devTools: { trace: true, traceLimit: 25 }以配置存储。如果您仍然没有看到跟踪选项卡中的代码块,请将traceLimit增加到30或40

相关问题