Node.js 使用 ES6 在 Visual Studio Code 中调试?

发布于 1周前 作者 bupafengyu 来自 nodejs/Nestjs

Node.js 使用 ES6 在 Visual Studio Code 中调试?

Node.js 目前好像不完全支持 import, 箭头函数,但是可以使用 babel 进行转译,但这样的话,调试的时候,只能把断点打在转译后的文件才能生效

问题是:有没有办法可以让断点停在原始文件上?

使用的是 Visual Studio Code, 有没有相关的插件可以实现?或者,其他 IDE?

谢谢了!

12 回复

有,用 source map


你试试在 babel 的配置文件里开启 source map,我记不太清了

ES6 的模块系统刚刚支持,但 ES6 的其他特性早就支持了,用的 V8 引擎所以基本和 Chrome 一样的进度。
你应该升级你的 Node 了

node 现在完全支持 es6 了吗?想用了。。

node 早就能用了

v8 最新版本 60 已经支持 import node V8.5.0 也已经支持 import 箭头函数这种早就支持了 升级 node 版本 直接打断点就好

node 现在的 stable 是 8 升级吧,都支持







node 8.5 对模块的支持需要将文件后缀名改为 .mjs, 运行时候也需要加上 --experimental-modules, 不知道正式支持的时候,是不是能直接后缀名 .js

同时,vscode 里面安装了 Node.js Modules Intellisense 来检测模块的话,mjs 文件是不扫描的,需要在 user settings 里面添加多一项 “.mjs”

<br>"node-module-intellisense.fileModuleExtensions": [<br> ".js",<br> ".jsx",<br> ".ts",<br> ".d.ts",<br> ".tsx",<br> ".vue",<br> ".json",<br> ".mjs"<br> ],<br>

不需要插件
1.像 2 楼说的那样,转译后要有 sourcemap 文件
2.在 launch.json 里把 sourcemap 设为 true,如果失败,说明 vscode 找不到生成的 sourcemap 文件,还要在 launch.json 里配置一下路径。

楼上有些不负责任的乱说,还好楼主自己不糊涂。同一楼 babel 加上 source map。[文档]( https://babeljs.io/docs/usage/cli/#babel-compile-with-source-maps)

在Visual Studio Code (VS Code) 中使用 Node.js 和 ES6 进行调试是非常高效的。以下是一个简单的步骤指南,帮助你快速上手:

  1. 安装 Node.js 和 VS Code: 确保你已经安装了最新版本的 Node.js 和 VS Code。

  2. 创建项目: 在你的工作目录下创建一个新的文件夹作为项目目录,然后在 VS Code 中打开它。

  3. 初始化项目: 在终端中运行 npm init -y 来初始化一个新的 package.json 文件。

  4. 配置 .babelrc(如果需要转译 ES6 代码): 创建一个 .babelrc 文件,并添加以下内容:

    {
      "presets": ["@babel/preset-env"]
    }
    
  5. 安装 Babel: 运行 npm install --save-dev @babel/core @babel/cli @babel/preset-env 来安装 Babel 及其预设。

  6. 创建调试配置: 在 VS Code 中,打开调试视图(左侧活动栏中的虫子图标),然后点击齿轮图标创建 launch.json 文件。选择 “Node.js” 环境。launch.json 可能如下所示:

    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "node",
          "request": "launch",
          "name": "Launch Program",
          "program": "${workspaceFolder}/app.js",
          "runtimeExecutable": "node",
          "outFiles": ["${workspaceFolder}/dist/**/*.js"]
        }
      ]
    }
    
  7. 编写并调试 ES6 代码: 编写你的 ES6 代码(例如 app.js),然后在 VS Code 中设置断点并启动调试。

这样,你就可以在 VS Code 中愉快地使用 Node.js 和 ES6 进行开发和调试了。

回到顶部