详解使用vscode+es6写nodejs服务端调试配置

 更新时间:2017年09月21日 11:31:33   作者:sky0014  
本篇文章主要介绍了使用vscode+es6写nodejs服务端调试配置,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

前端的小伙伴们在babel等的加持下,已经可以愉快的使用es6来写代码了。

然后对于服务端的nodejs就有点坑爹了,虽然原生支持了es6,但是只是部分支持,一些不支持的特性(比如module)使用了就会报错,所以如果想使用完整的es6来写服务端nodejs,我们还是离不开babel。

下面介绍一下在vscode中使用es6写nodejs的配置方法。

1.首先在根目录下建立.babelrc文件,写入babel配置,我的配置如下,记得npm安装babel及你需要的presets或者plugin。

{
 "presets": [
 "es2015",
 "stage-3"
 ]
}

2.其实此时已经可以通过babel-node来执行你的es6代码了。

babel-node src/index.js

然而这样的话,vscode里面是无法调试的。所以我们得换个思路,首先将源码使用babel转换,然后执行转换后的代码,附加一份sourcemap就好了。

3.package.json中增加build命令,使用babel转换es6代码。

 "scripts": {
 ......
 "build": "babel src -d dist --source-maps"
 }

4.创建一个npm task(vscode概念),用来执行npm run build

{
 // See https://go.microsoft.com/fwlink/?LinkId=733558
 // for the documentation about the tasks.json format
 "version": "0.1.0",
 "command": "npm", //执行npm命令
 "isShellCommand": true,
 "showOutput": "always",
 "suppressTaskName": true,
 "tasks": [
 {
  "taskName": "build", //task名称
  "args": [ //npm run build
  "run",
  "build"
  ],
  "isBuildCommand": true
 }
 ]
}

该文件在根目录.vscode目录下,名字是tasks.json,如果没有可以自己创建一个。

5.在vscode的调试配置文件中(.vscode -> launch.json),进行如下配置

{
 // Use IntelliSense to learn about possible Node.js debug attributes.
 // Hover to view descriptions of existing attributes.
 // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
 "version": "0.2.0",
 "configurations": [
 {
  "type": "node",
  "request": "launch",
  "name": "启动程序",
  "program": "${workspaceRoot}\\src\\index.js",
  "sourceMaps": true, //sourcemap打开
  "outFiles": [
  "${workspaceRoot}\\dist\\index.js"
  ], //源映射,指定实际执行文件
  "preLaunchTask": "build" //首先执行build task
 },
 {
  "type": "node",
  "request": "attach",
  "name": "附加到端口",
  "address": "localhost",
  "port": 5858
 }
 ]
}

主要干了这几件事:

  • 开启source-map,以便追踪到es6源码
  • 运行前先执行build,编译es6源码
  • 执行和调试编译后的代码

OK,现在我们就可以愉快的在vscode里用es6写nodejs了,撒花~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • nodejs二进制与Buffer的介绍与使用

    nodejs二进制与Buffer的介绍与使用

    这篇文章主要给大家介绍了关于nodejs二进制与Buffer的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用nodejs具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • nodejs文件操作模块FS(File System)常用函数简明总结

    nodejs文件操作模块FS(File System)常用函数简明总结

    这篇文章主要介绍了nodejs文件操作模块FS(File System)常用函数简明总结,对FS模块的大部份异步函数做了介绍,而且用中文注释,这下用起来方便了,需要的朋友可以参考下
    2014-06-06
  • nodejs不用electron实现打开文件资源管理器并选择文件

    nodejs不用electron实现打开文件资源管理器并选择文件

    最近在开发一些小脚本,用 nodejs 实现,其中很多功能需要选择一个/多个文件,或者是选择一个文件夹,这种情况下网上给出的解决方案都是 electron,但是我一个小脚本用 electron 属实有点夸张了,后来转念一想可以通过 powershell 来实现类似的功能,需要的朋友可以参考下
    2024-01-01
  • 使用node+vue.js实现SPA应用

    使用node+vue.js实现SPA应用

    这篇文章主要介绍了使用node+vue.js实现SPA应用的相关资料,需要的朋友可以参考下
    2016-01-01
  • Nodejs中的this详解

    Nodejs中的this详解

    本文给大家汇总介绍了下nodejs中的this,nodejs中的this和在浏览器中javascript中的this还是有很大的差异的,小伙伴们可以研究下
    2016-03-03
  • NodeJS实现一个聊天室功能

    NodeJS实现一个聊天室功能

    这篇文章主要介绍了NodeJS实现一个聊天室功能,本文实例截图相结合给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-11-11
  • NodeJS如何实现同步的方法示例

    NodeJS如何实现同步的方法示例

    nodeJS最大的特点就是其异步操作,下面这篇文章主要给大家介绍了关于NodeJS如何实现同步的方法的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-08-08
  • yarn的安装和使用全网最详细教程

    yarn的安装和使用全网最详细教程

    Yarn是facebook发布的一款取代npm的包管理工具,本文给大家介绍yarn的安装和使用全网最详细教程,感兴趣的朋友一起看看吧
    2023-12-12
  • Node的事件处理和readline模块详解

    Node的事件处理和readline模块详解

    这篇文章主要为大家详细介绍了Node的事件处理和readline模块,使用数据库,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • Node.js和Express简单入门介绍

    Node.js和Express简单入门介绍

    本篇文章主要介绍了Node.js和Express简单入门介绍,详细介绍如何用Node.js和Express搭建一个web服务器,有兴趣的可以了解一下。
    2017-03-03

最新评论