开发过程中,控制台报错总是出 dits/*.js:行列
,我希望拿到 src/*.ts:行列
帮助我快速定位错误
我写的是 typescript的react ,用rollup打包的。
我尝试了在 config中配置 output.sourcemap = 'inline'
,输出的文件也确实变大了,在文件末尾增加了一行以//# sourceMappingURL=data:
开头的内容。但并没有正确的把错误指向ts文件。throw new Error
的时候,打印到控制台的依然是js的路径。
我不知道要如何做才能源码调试。
我希望在抛出错误的时候,控制台能给我 ts中的位置。
我是要改写Error的构造函数吗?我又该如何使用sourcemap inline中的数据呢?
===========================
2023/3/22 更新
已经尝试 output.sourcemap = true
,通过try catch 把报错发出来,在本地端口监听的回调中把 Error.stack 的路径 通过dist*.js.map
还原到 src/*.ts
并输出在命令行里。
目前已知是平台没有像浏览器那样支持sourcemap。我不知道能否inline
模式下,直接在代码的trycatch 中处理好路径。