使用vs code开发Nodejs程序的使用方法


Posted in NodeJs onSeptember 21, 2017

最近再研究nodejs,苦苦再选一款轻量级的编辑器,由于本人一直从事.net开发,虽然微软推出了Visual Studio 开发node js的插件,而且用着也不错,但是总感觉这个编辑器体量太大(一装就是几个G)!webstore是目前最受欢迎的Nodejs开发IDE之一。受欢迎的原因,当然是对于Nodejs IDE的集成开发环境,集项目创建、编辑、调试于一体,简单的配置,强大的智能提示。因为前面说过我一直做.net开发,刚好微软在2016年推出了vs code 一款轻量级的文本编辑器,可以编写各种语言的程序并进行调试,为了熟悉这款编辑器方便后续的开发,所以这次选用了vs code作为这次开发的编辑器(尽管VScode看起来更像是Uedit、Noteplus等强大文件编辑器,但它也提供了可扩展的、强大的提示功能(特别是文件间js引用提示),以及内置Nodejs调试功能,让它有别于一般的编辑工具。)!当然也跟微软未来的战略有关!

本文的前提是你已经安装了vs code代码编辑器和nodejs环境,如果没有安装,请自行下载安装!

 一、使用Express创建项目[这两步都在dos 模式下执行]

1,安装全局的Express!(已安装请忽略)

npm install -g express

2,创建项目

创建项目(创建文件夹名称ExpressApp)

express ExpressApp

小插曲:如果你习惯了Linux下的环境,你可以在自己电脑上安装cmder(不知道是什么东西,请自行百度),这个命令行工具排版漂亮,不像微软的dos 那么枯燥!我用的是Mini版本,如果你想体验linux下的全部功能,可以下载full版本。

3,下载第三方包

(1)cmd命令行切换到项目目录

cd d:\nodejs\ExpressApp

(2)根据需要编辑package.json,运行如下指令安装第三方包

npm install

在项目目录下node_modules可见安装好的第三方包

ExpressApp
|? node_modules

(3)运行项目

npm start

输出如下:

ExpressApp@0.0.0 start d:\Nodejs_Workspace\ExpressApp
node ./bin/www
注:npm start指令会自动执行node ./bin/www

在浏览器中输入http://localhost:3000,可访问Express欢迎页面

二、使用VSCode开发Nodejs

1、VSCode打开Nodejs

code d:\nodejs\ExpressApp 
code.

注:在当前项目下创建ExpressApp.bat,输入“code .”即可,下次直接此文件直接使用VSCode打开Nodejs项目

2、添加智能提示

VSCode打开Nodejs项目,默认是没有智能提示。

(1)使用TypeScript Definition Manager(TSD)在项目中下载所需的tsd文件,VSCode中打开时有智能
全局安装tsd(如已安装忽略)

npm install -g tsd

下载所需的组件提示(以下载node、express、requirejs提示为例)

tsd query node --action install
tsd query express --action install
tsd install require

注:

①多个提示组件在query参数后可以空格分隔简写为tsd query node express ?action install

②组件会项目目录下添加typings文件夹

|? typings
|? node
|? express
|? require

(2)添加js文件引用的智能提示

假如在文件引用另外一个文件common.js时,文件头添加如下

{
  // See https://go.microsoft.com/fwlink/?LinkId=759670
  // for the documentation about the jsconfig.json format
  "compilerOptions": {
    "target": "es6",
    "module": "commonjs",
    "allowSyntheticDefaultImports": true
  },
  "exclude": [
    "node_modules",
    "bower_components",
    "jspm_packages",
    "tmp",
    "temp"
  ]
}

(小提示,如果你引入了rquire,那么你的编辑器右下方会显示一个“灯泡”的提示,你只要点灯泡就不用自己苦逼的写这个配置文件了)

此配置表示代码服从ES5标准并使用commonjs规范,发VScode下有此配置之后,可以实现在文件中对require引用js文件的智能提示。(我测试时无此配置也会有智能提示,不清楚什么原因)

三、调试

1、创建VSCode调度配置文件

点击调试面板,并点击运行(F5)按钮时,右侧出现下拉框,选择“Node.js”

然后会在项目目录下创建launch.json文件

ExpressAppp
|?.vscode
|? launch.json

可根据需要编辑launch.json,修改启动配置项

2、创建断点:

根据需要创建断点:在js文件编辑区域左侧,会添加/移除断点

3、调度

在调试面板上点击运行或按快捷键F5,单步调试按F10就可以了!

其实这些在微软的官方文档里面有,打算有的小细节或者步骤会被开发者无形无视,这样会给后期开发造成一定的影响,所以请大家严格按照配置需求进行配置!

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

NodeJs 相关文章推荐
golang、python、php、c++、c、java、Nodejs性能对比
Mar 12 NodeJs
nodejs教程之环境安装及运行
Nov 21 NodeJs
nodejs中使用多线程编程的方法实例
Mar 24 NodeJs
Highcharts+NodeJS搭建数据可视化平台示例
Jan 01 NodeJs
基于NodeJS+MongoDB+AngularJS+Bootstrap开发书店案例分析
Jan 12 NodeJs
详解使用nodeJs安装Vue-cli
May 17 NodeJs
深入理解nodejs中Express的中间件
May 19 NodeJs
浅谈nodejs中的类定义和继承的套路
Jul 26 NodeJs
nodejs 最新版安装npm 的使用详解
Jan 18 NodeJs
nodejs提示:cross-device link not permitted, rename错误的解决方法
Jun 10 NodeJs
Nodejs使用archiver-zip-encrypted库加密压缩文件时报错(解决方案)
Nov 18 NodeJs
nodejs脚本centos开机启动实操方法
Mar 04 NodeJs
详解使用vscode+es6写nodejs服务端调试配置
Sep 21 #NodeJs
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
Sep 19 #NodeJs
Nodejs中使用phantom将html转为pdf或图片格式的方法
Sep 18 #NodeJs
nodejs Assert中equal(),strictEqual(),deepEqual(),strictDeepEqual()比较
Sep 18 #NodeJs
Nodejs+express+ejs简单使用实例代码
Sep 18 #NodeJs
详解nodejs中express搭建权限管理系统
Sep 15 #NodeJs
nodejs socket服务端和客户端简单通信功能
Sep 14 #NodeJs
You might like
PHP+DBM的同学录程序(5)
2006/10/09 PHP
PHP中new static()与new self()的区别异同分析
2014/08/22 PHP
php中关于长度计算容易混淆的问题分析
2016/05/27 PHP
在Laravel中实现使用AJAX动态刷新部分页面
2019/10/15 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
麦鸡的TAB切换功能结合了javascript和css
2007/12/17 Javascript
js escape,unescape解决中文乱码问题的方法
2010/05/26 Javascript
Google的跟踪代码 动态加载js代码方法应用
2012/11/12 Javascript
js 中的switch表达式使用示例
2020/06/03 Javascript
PhotoShop给图片自动添加边框及EXIF信息的JS脚本
2015/02/15 Javascript
JavaScript原型及原型链终极详解
2016/01/04 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
JavaScript实现星级评分
2017/01/12 Javascript
windows下vue-cli导入bootstrap样式
2017/04/25 Javascript
JS实现的邮箱提示补全效果示例
2018/01/30 Javascript
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
使用 vue 实例更好的监听事件及vue实例的方法
2019/04/22 Javascript
Vue如何基于es6导入外部js文件
2020/05/15 Javascript
实例讲解React 组件生命周期
2020/07/08 Javascript
python中的对象拷贝示例 python引用传递
2014/01/23 Python
Python数据可视化之画图
2019/01/15 Python
python实现交并比IOU教程
2020/04/16 Python
Pymysql实现往表中插入数据过程解析
2020/06/02 Python
python如何进行矩阵运算
2020/06/05 Python
Python如何自动获取目标网站最新通知
2020/06/18 Python
Django ModelForm组件原理及用法详解
2020/10/12 Python
详解CSS3选择器:nth-child和:nth-of-type之间的差异
2017/09/18 HTML / CSS
Vans英国官方网站:美国南加州的原创极限运动潮牌
2017/01/20 全球购物
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
市场安全管理制度
2014/01/26 职场文书
2014党委书记四风对照检查材料思想汇报
2014/09/21 职场文书
党支部三严三实对照检查材料思想汇报
2014/09/29 职场文书
井冈山红色之旅心得体会
2014/10/07 职场文书
幼儿园教学工作总结2015
2015/05/12 职场文书
教师个人工作总结范文2015
2015/10/14 职场文书
box-shadow单边阴影的实现
2023/05/21 HTML / CSS