【问题标题】:How to traceback errors in node.js when I'm running transpiled files?运行转译文件时如何追溯 node.js 中的错误?
【发布时间】:2018-04-16 22:39:17
【问题描述】:

我很确定这是一个非常愚蠢的问题,我只是错过了一些非常基本的东西。

我目前有一个节点项目,我正在使用 babel 将我的文件转换为 /dist 目录。当我启动我的服务时,我运行/dist 路径中的文件,因为它包含所有不错的async/await 功能。

但是,每当我的服务器上的某些东西在本地发生故障时,调试它就会变得很痛苦,因为它会追溯到 /dist 文件夹中的文件/行,而该文件夹没有正确映射到实际源。

即:dist/config/routeHelpers/mozApiHelper.js:187:24

我正在使用 babel 通过以下命令转译我的文件:

./node_modules/.bin/babel src -w -d dist

感谢任何帮助。谢谢!

【问题讨论】:

  • 好吧,对于初学者,您可以在该行号和列号处查看转译文件本身,以查看导致错误的代码。您将不得不手动找出原始代码的哪一部分与该部分相对应,但这通常并不难。现在的调试器还支持 .map 文件,它可以让您在单步执行转译代码或设置断点时查看原始代码。

标签: node.js babeljs source-maps


【解决方案1】:

要让babel-cli 生成源映射,请添加--source-maps 参数:

./node_modules/.bin/babel src -w -d dist --source-maps

要让节点支持源地图安装source-map-support

npm install source-map-support

如果您之前使用node dist/compiled.js 运行您的应用程序,您现在将其更改为:

node -r source-map-support/register dist/compiled.js

查看 source-map-support 自述文件了解其他使用选项。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-15
    • 2012-11-07
    • 2017-07-05
    • 2016-09-08
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多