javascript - 如何为开发工具设置为源映射的缩小包获取 webpack 生产环境的可读堆栈跟踪?
问题描述
对于将 dev-tool 设置为source-map的缩小捆绑包,是否可以获得webpack生产环境的可读堆栈跟踪?我正在运行 Typescript 并使用 Webpack 构建做出反应。下面的清单显示了一个正在引发的异常的示例:
http://localhost:8080/vendors~course-list.3042c44300bc08021f63.bundle.js:2:6029
http://localhost:8080/vendors~course-list.3042c44300bc08021f63.bundle.js:2:5067
in w in b in withRouter(b) in e in e in Suspense in div in e in e in S
在上面的堆栈跟踪中,可以通过将 devtool 选项设置为source-map进行以下观察:
- 名称保持最小化,例如 w、b 和 e。
- 报告最小化的错误位置,例如行号和列号。
解决方案
我正在使用这个 npm 包,效果很好:)
https://www.npmjs.com/package/sourcemapped-stacktrace
例子:
import * as sourceStackTrace from 'sourcemapped-stacktrace';
...
const minifiedStack = new Error().stack;
sourceStackTrace.mapStackTrace(minifiedStack, (stackTrace: string[]) => {
// Do your thing here
});
推荐阅读
- c++ - 为什么我只从可变参数模板中提取一个值?
- sql - 访问不匹配或类似的查询,其中一列不包含或不像另一列
- javascript - 如何将数据库中的数据提取到 javascript 文件中并将其存储在数组中?
- entity-relationship - 哪种实体关系方法看起来正确或更好?
- elasticsearch - 获取浏览量、唯一用户的统计信息,没有任何进一步的信息,ELK 就足够了吗?
- css - 如何让css只影响一个按钮,而不是全部?
- git - 推送到不同的远程存储库
- django - 如何获得超级详细的 Django 调试信息?
- arduino - 似乎无法让这个“计数”起作用。每次我按下按钮时,无论代码如何,LED 和灯都会打开
- git - 如何告诉 bitbake 在特定任务后计算变量的 basehash 值?