在Visual Studio上开发Node.js程序
原文:在Visual Studio上开发Node.js程序

【题外话】

最近准备用Node.js做些东西,于是找找看能否有Visual Studio上的插件以方便开发。结果还真找到了一个,来自微软的Node.js Tools for Visual Studio(NTVS),虽然现在仅发布了1.0 Alpha版本,但使用起来已经非常方便。而且,其开发团队与Python Tools for Visual Studio(PTVS)是同一个,而PTVS就是Visual Studio 2013中要创建自带的Python项目需要安装的那个程序,所以大可放心的使用NTVS。

【系列索引】

  1. 在Visual Studio上开发Node.js程序——NTVS介绍及使用
  2. 在Visual Studio上开发Node.js程序(2)——NTVS远程调试及发布到Azure

【文章索引】

  1. NTVS介绍与安装
  2. NTVS项目创建和使用
  3. NTVS项目的调试
  4. NTVS项目的包管理

【一、NTVS介绍与安装】

从其官网(http://nodejstools.codeplex.com)上可以找到其介绍,NTVS是一个使Visual Studio成为Node.js集成开发环境的免费、开源的插件,NTVS支持编辑、Intellisense、Profiling、npm包管理器、本地以及远程调试(Windows、MacOS及Linux),同时其支持Windows Azure网站及云服务。

总之,该有的都有了。如果要安装NTVS的话,需要VS 2013或2012 Update4的Professional(或Test Professional)、Premium或Ultimate版本,同时需要安装有Node.js的0.10.20或以上的版本,有了这些准备后,就可以去官网下载安装包进行安装了,需要注意的是,VS 2013和2012的安装包是各自独立的。

安装完成后,就会在Visual Studio的JavaScript类型中多出以下的项目类型:

【二、NTVS项目创建和使用】

对于Node.js而言,项目类型并不像.NET项目有这么多不同的类型,每种之间的开发环境等还有差异。对于上面的Blank Node.js Console Application和Web Application两个项目而言,无非就是前者模板的代码只提供了在控制台输出Hello World的代码;而后者则用Node.js创建了一个Http服务器,并为每个请求都输出Hello World罢了,即实现了一个简单的Web应用程序。而Express Application则是使用Node.js上的Express框架+Jade模板引擎+Stylus实现了一个小的Web应用程序。而剩下的第一个项目则是从已有的Node.js项目中创建,后两个与其他的类似,只不过已经配置好了脚本和配置文件等可以直接部署到Windows Azure中。

项目创建后与Visual Studio的C#等项目没有太大区别,Intellisense功能也非常强大,敲入require的时候会提示所有的模块名称,同时选择每个模块的时候会提示这个模块的作用和说明(如下图),然后键入回车可以直接补齐单引号等等,都非常方便。而对于每个模块,其所有方法和成员变量也都能自动显示出来,只不过不像require那样会显示说明信息。

【三、NTVS项目的调试】

NTVS项目调试的方式与C#一样,都是F5运行并调试和Ctrl+F5只运行不调试,其会自动运行已安装的Node程序执行当前项目的代码。对于Web Application项目并且使用了使用了http模块的话,还会自动打开浏览器访问指定的端口(可以在项目属性中关闭)。需要说明的是,对于Node.js项目,有且仅有一个启动文件(即使用node.exe执行的文件,相当于程序的Main()函数),程序从这个文件的开始执行,默认情况下项目创建后第一个创建的js文件为启动文件,启动文件用粗体表示。如果需要设置其他文件为启动文件,右键单击选择设置就可以了(如下图) 。

在调试过程中,与其他项目一样,都可以设置断点、单步执行以及监视什么的都是可以用的,同时如果在程序代码中抛出了异常,在调试过程中也会提示出来(如下图)。

默认情况下,所有异常都将提示,当然也可以自己选择哪些异常不提示。可以在提示了异常之后选择“打开异常设置”,或者选择“调试”菜单,选择“异常”,如下图:

【四、NTVS项目的包管理】

NTVS还提供了非常方便的包管理方式,就如同在C#项目中添加引用一样方便的添加其他包。当然也可以自己使用npm安装相应的包,然后在项目中使用,虽然调试运行没有问题,不过这样是没有Intellisense提示的。所以,如果项目中需要其他的包,可以右键单击npm,选择“Manage npm Modules...”(如下图),在npm包管理器中右侧的包名称中输入包的名称,然后点击下方的本地安装(为当前项目安装)就可以了,完成后会在左侧出现已安装的包,然后在项目中require也会出现相应的包名,在使用包的时候也会有方法成员的提示等等。

安装完包后就会在解决方案管理器的npm下出现相应的包名,与C#项目添加引用类似。同时,与执行npm ls命令一样,也是可以查看包的依赖关系的(如下图)。

【相关链接】

  1. Introducing node.js Tools for Visual Studio:http://www.hanselman.com/blog/IntroducingNodejsToolsForVisualStudio.aspx
  2. [Visual Studio]NTVS - Node.js Tools For Visual Studio Bootcamp:http://www.dotblogs.com.tw/blackie1019/archive/2013/12/27/136557.aspx
  3. Microsoft Joins Forces with RedGate and Clickberry to Offer Node.js Tools for Visual Studio:http://www.infoq.com/news/2013/12/NTVS
posted on 2014-02-23 14:55 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/3561941.html

在Visual Studio上开发Node.js程序相关推荐

  1. 在Visual Studio上开发Node.js程序(2)——远程调试及发布到Azure

    [题外话] 上次介绍了VS上开发Node.js的插件Node.js Tools for Visual Studio(NTVS),其提供了非常方便的开发和调试功能,当然很多情况下由于平台限制等原因需要在 ...

  2. 如何用 Visual Studio 2017 开发 Arduino 应用程序

    如何用 Visual Studio 2017 开发 Arduino 应用程序 使用Visual Studio 2017 开发 Arduino 应用程序需要两个软件: Visual Studio Vis ...

  3. Smobiler 4.4 更新预告 Part 1(Smobiler能让你在Visual Studio上开发APP)

    在4.4版本中,大家对产品优化的一些建议和意见进行了相应的优化和修复,同时,还新增了一些令人激动的功能和插件. 下面先为大家介绍4.4版本中Smobiler的优化和修复: 优化 1, PageView ...

  4. 将Visual Studio打造成为Node.js IDE

    原文地址:http://www.csdn.net/article/2013-11-22/2817594-Introducing-node.js-Tools-for-Visual-Studio 之前,C ...

  5. 玩儿转物联网IoT - 在Beagle Bone Black上运行node.js 程序

    物联网(IoT)技术方兴未艾,智能手环,智能血压计,智能眼镜甚至智能鞋垫都开始进入我们的生活,各种智能设备层出不穷,世界已经到了一个"人有多大胆,地有多大产"的时代,不玩儿点物联网 ...

  6. Visual Studio上开发Python?你不可不知道的六大功能!

    Visual Studio 2013/2015 搭配 Python Tools for Visual Studio 扩充套件让 Visual Studio 能提供对 Python 程序语言高度整合的开 ...

  7. CMake结合Visual Studio中开发Qt应用程序注意事项

    Qt工程管理 个人比较偏爱于使用CMake来管理C++工程,因为只要编写一个CMakeLists.txt文件,就可以在Windows和Mac上生成各自的IDE工程.在Windows上, CMake自然 ...

  8. Vue.js+Node.js全栈开发教程:通过Visual Studio Code开发调试Node应用

    目前,有多种开发工具可以支持Node.js应用的开发,比如: jetBrains WebStorm.Eclipse.Visual Studio Code等.这些开发工 具原则上是"条条大路通 ...

  9. 【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    .NET Core with Visual Studio Code 目录 概述... 2 先决条件... 2 练习1: 安装和配置.NET Core以及Visual Studio Code 扩展... ...

最新文章

  1. 适合产品经理的十本书 From 俞军
  2. 高性能缓存服务器 Nuster
  3. java经典算法四十题
  4. ASP.NET WebForm和Mvc开发的比较
  5. HadoopHA集群搭建
  6. 读取寄存器值_温湿度传感器与S7-1200 PLC通讯读取温湿度案例
  7. Daily scrum 10.12
  8. 【数据分析面试】大厂高频SQL笔试题(二)
  9. 硬核,创业公司就应该技术选型 Spring Cloud Alibaba, 开箱即用
  10. 批量下载Landsat快视图,为批量下载Landsat Level1数据做准备
  11. 计算机网络设计大赛总结,计算机技能大赛总结#.doc
  12. 关于VISIO2013显示首要事项闪退问题
  13. 'Did you install mysqlclient or MySQL-python?' % e 'Did you install mysqlclient or MySQL-pyth
  14. 蚁群算法求解TSP问题
  15. Spring AOP 学习笔记
  16. 服务器被植入挖矿木马的心酸过程
  17. soc 设计soc设计 uml实务手册_企业内训“领域建模和领域驱动设计”训练方案(2020年)...
  18. 编写程序,输入一个较小的实数deta,利用e=1+1/1(嘿哈)+1/2(嘿哈)+1/3(嘿哈)+⋯+1/n(嘿哈)计算e的近似值,直到最后一项的绝对值小于deta时为止,输出此时e的近似值。
  19. AXI接口协议学习总结
  20. SpringBoot的开发(3)--前端页面的搭建、前端页面的编写、分页和增删改查功能的实现...

热门文章

  1. php function 输出,PHP中常用的输出函数总结
  2. 输入输出系统 2--- 中断(未完)
  3. 【图像超分辨率】MSAN:Scene-Adaptive RS Img SR a Multiscale Attention
  4. paradox 修改字段长度_关于生日的作文500字9篇
  5. 写代码?程序猿?你不能不懂的八大排序算法的Python实现
  6. linux 网络RPS/RFS/XPS
  7. C语言编译流程:预处理、编译、汇编、链接
  8. 在村镇银行存款,银行先把利息全给了,这种存款安全吗?
  9. 有没有哪种贷款不用利息,而且门槛又低?
  10. 看“意大利文艺复兴艺术展”(1)