如何获取 JavaScript 错误的行号或文件名?

5

我对这样的错误有点厌烦了:

enter image description here

它没有说明是哪个文件、哪个函数或哪一行出错。

在这种情况下,这是调用者的那一行。

vm.setDates(new Date(vm.checkin*1000).format('M d Y'), new Date(vm.checkout*1000).format('M d Y'))

在代码中有几个函数,其中包含错误的.format 函数。

有没有办法获得比 app.bundle.js:12345 更好的“错误指示”?


3
我认为你应该了解一下「源代码映射(Source Maps)」的概念。可参考此链接:https://trackjs.com/blog/debugging-with-sourcemaps/ - Eduardo Melo
你的程序中有“substr”字符串吗? - raj peer
这个错误的右侧将显示文件的名称和行号。 - Himanshu Upadhyay
1个回答

1
我认为你应该使用源映射。源映射是生成/转换/压缩后的JavaScript文件与一个或多个原始源文件之间的映射关系。源映射的主要目的是帮助调试。基本上,如果生成的代码文件中有错误,地图可以告诉您原始源文件的位置。参考资料: Sourcemaps

谢谢Eduado!我的webpack已经有类似的东西了,但我不明白这是什么?var ENV = process.env.npm_lifecycle_event; var isTest = ENV === 'test' || ENV === 'test-watch'; var isProd = ENV === 'build'; - torbenrudgaard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接