【题外话】html
最近准备用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。node
【系列索引】npm
【文章索引】浏览器
从其官网(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类型中多出如下的项目类型:网站
对于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中。spa
项目建立后与Visual Studio的C#等项目没有太大区别,Intellisense功能也很是强大,敲入require的时候会提示全部的模块名称,同时选择每一个模块的时候会提示这个模块的做用和说明(以下图),而后键入回车能够直接补齐单引号等等,都很是方便。而对于每一个模块,其全部方法和成员变量也都能自动显示出来,只不过不像require那样会显示说明信息。
NTVS项目调试的方式与C#同样,都是F5运行并调试和Ctrl+F5只运行不调试,其会自动运行已安装的Node程序执行当前项目的代码。对于Web Application项目而且使用了使用了http模块的话,还会自动打开浏览器访问指定的端口(能够在项目属性中关闭)。须要说明的是,对于Node.js项目,有且仅有一个启动文件(即便用node.exe执行的文件,至关于程序的Main()函数),程序从这个文件的开始执行,默认状况下项目建立后第一个建立的js文件为启动文件,启动文件用粗体表示。若是须要设置其余文件为启动文件,右键单击选择设置就能够了(以下图) 。
在调试过程当中,与其余项目同样,均可以设置断点、单步执行以及监视什么的都是能够用的,同时若是在程序代码中抛出了异常,在调试过程当中也会提示出来(以下图)。
默认状况下,全部异常都将提示,固然也能够本身选择哪些异常不提示。能够在提示了异常以后选择“打开异常设置”,或者选择“调试”菜单,选择“异常”,以下图:
NTVS还提供了很是方便的包管理方式,就如同在C#项目中添加引用同样方便的添加其余包。固然也能够本身使用npm安装相应的包,而后在项目中使用,虽然调试运行没有问题,不过这样是没有Intellisense提示的。因此,若是项目中须要其余的包,能够右键单击npm,选择“Manage npm Modules...”(以下图),在npm包管理器中右侧的包名称中输入包的名称,而后点击下方的本地安装(为当前项目安装)就能够了,完成后会在左侧出现已安装的包,而后在项目中require也会出现相应的包名,在使用包的时候也会有方法成员的提示等等。
安装完包后就会在解决方案管理器的npm下出现相应的包名,与C#项目添加引用相似。同时,与执行npm ls命令同样,也是能够查看包的依赖关系的(以下图)。
【相关连接】