NTVS:把Visual Studio变成Node.js IDE 的工具

简介: 就在你认为Redmond不可能更疯狂的时候,今天他们介绍了一个 VS 插件工具,Visual Studio的node.js工具。

image.png

就在你认为Redmond不可能更疯狂的时候,今天他们介绍了一个 VS 插件工具,Visual Studio的node.js工具。


NTVS(Node.js Tools for Visual Studio) 运行于VS2012或者VS2013。一些node.js的爱好者已经从PTVS(Python Tools for Visual Studio)转向并开始为VS做些node工具。同时,PTVS团队也在node.js整合上下功夫,于是他们都专注于NTVS使之成为一个社区项目。NTVS是由给你带来PTVS的相同团队开发的,并且得到了来自Red Gate的Bart Read(他开发了Node Packaged Modules图形用户界面),来自Clickberry的Dmitry Tretyakov的帮助,他们做了一些调试与功能修复。


NTVS从开始就是开源的,并且从一开始就采纳贡献。它支持编辑,智能感知,分析,npm(节点模块封装),本地与远程调试(当服务器运行于Windows/MacOS/Linux),以及发布到Azure网站和云服务。


他们如何做到这些是相当惊人的,所以我建议你下载并且试用它,因为其中的一些内容(即使这里给出的只是最初版)是非常非常聪明的。

image.png

NTVS结合了V8分析应用和Visual Studio的报告特性以告诉你你的程序哪里消耗它的时间。


提示:看到上面File|New Project的对话框了吗?Visual Studio按照开发语言组织类型,所以node.js在JavaScript分类下。但你也注意到在Visual Studio中的Python,Django,C#分类下的iOS和Android,TypeScript,VB,F#等分类。


让我印象深刻的事之一是,他们将node.js整合进Visual Studio中时并没有新建或者重做已经在Visual Studio中完善的功能。这就是node,运行在node.exe,使用V8调试器,使用V8分析器因为这些就是人们在使用的。但是,例如,NTVS可以从V8分析器得到输出并且使用Visual Stuido分析报告工具显示结果。没必要推倒重来,只要使用合适的工具来完成工作。


使用NTVS完成Ghost博客引擎

让我们来看个例子。


从Visual Studio开始,顺序是File |New Project,点击JavaScript,然后选择“From Existing Node.js code”。

image.png

将NTVS指向你的Ghost目录。

image.png

然后设置node.js开始文件为index.js,点击Next,保存项目文件并且完成。

image.png

这时,你已经在VS中设置了Ghost。

随记:自从我得到网页要素后我也得到一个不错的好处—屏幕Markdown编辑器。

从这里,点击F5就可以调试,或者Ctrl-F5直接开始。当然注意在右下角的工程属性窗口中显示的node路径,端口还有开始文件。你当然可以修改它们。

image.png

这里我在本地运行Ghost。你可以看到node的路径,ghost.js文件和我的浏览器。

image.png

你将从方法签名中获取实现与帮助的提示。

image.png


调试

NTVS包含了对node应用程序完整的调试支持。这包含了逐步调试,断点调试,“异常中断”,还有本地变量窗口,观察窗口,即时窗口和调用栈工具窗口。


你可以像其他语言的服务一样处理异常。看下面的对话框,node.js异常和其他异常列在处理与未处理代码的分类中。

image.png

通过node V8调试器,调试始终如它通常的方式运行。除非Visual Studio通过另外的套接字连接调试器(记住,你甚至可以在Linux或者Mac系统中像这样远程运行调试node.js)并且将V8如何做调试转义为Visual Studio如何做调试。这种感受是无缝衔接的。


通过这个截图,你可以看到node.exe已经被调试了,我运行了Ghost。你可以看到我的调用栈和本地变量在观察窗口。我可以查看变量,分步调试并且在你调试一个网络应用程序的时候做任何你想做的事。

image.png


NPMVISUAL STUDIO

使用npm的体验也是相当酷。NTVS始终监视文件系统,所以以命令行或者节点直接窗口方式运行npm的话是更受欢迎的方式,Visual Studio中将看到变化。


你也可以使用npm包管理对话框并且搜寻库,图形化安装包。这取决于你。

image.png

这是一个包在安装中…

image.png

物理上的节点模块和这些模块的操作是纯代码化的…VS并不涉及或者说关心它。但是,Visual Studio的解决方案资源管理器(Solution Explorer)中也以逻辑视图呈现物理视图。

image.png

提示:我很喜欢这点。我认为它有潜力,我更喜欢.NET的引用也如此处理。物理的和逻辑的依赖树显示了NuGet包。这帮助我更好地理解项目。


还有更多。有个REPL互动窗口,你可以如其他网络工程一样,与ASP.NET工程使用相同的发布向导来发布网络工程。你也可以直接发布node.js应用程序到Azure,使用Git或者Visual Studio发布。


你也可以在其它机器远程调试node实例,通过引入远程调试代理来启动node。

image.png

node.exe RemoteDebug.js -machineport 5860 script.js

正如提及的,你可以在运行于任何服务器操作系统的Visual Studio和node上远程调试。


总结

我个人对于Visual Studio正转变为(对我而言,在短期内)十足的组件语言和开发环境工厂感到非常高兴。


NTVS在Apache许可下是完全开源的并且他们欢迎贡献与错误报告。这是最初版但它很棒。去使用它吧。祝福所有参与的人!

相关文章
|
7天前
|
数据可视化 前端开发 JavaScript
可视化工具D3.js
可视化工具D3.js
|
14天前
|
机器学习/深度学习 人工智能 IDE
Cursor免费 GPT-4 IDE 工具的保姆级使用教程
本文介绍了Cursor这一基于人工智能技术的代码生成工具,包括其特点(利用自然语言处理和深度学习算法,可生成高质量代码,支持多种编程语言,能在多种操作系统上运行)及使用教程。教程内容涵盖下载(通过官网获取对应系统版本并安装)、初始化配置(如配置快捷键、AI指定语言,导入VS Code扩展,设置数据偏好,登录/注册)、安装插件(设置Cursor中文、配置gitee)、配置模型和Key(选择模型、配置密钥、自定义模型并进行测试)以及如何使用(打开提示词面板)等步骤。
94 6
 Cursor免费 GPT-4 IDE 工具的保姆级使用教程
|
4天前
|
存储 JavaScript 前端开发
Node 版本控制工具 NVM 的安装和使用(Windows)
本文介绍了NVM(Node Version Manager)的Windows版本——NVM for Windows的安装和使用方法,包括如何安装Node.js的特定版本、列出已安装版本、切换使用不同版本的Node.js,以及其他常用命令,以实现在Windows系统上对Node.js版本的便捷管理。
Node 版本控制工具 NVM 的安装和使用(Windows)
|
16天前
|
JavaScript Linux 开发者
一个用于管理多个 Node.js 版本的安装和切换开源工具
【9月更文挑战第14天】nvm(Node Version Manager)是一个开源工具,用于便捷地管理多个 Node.js 版本。其特点包括:版本安装便捷,支持 LTS 和最新版本;版本切换简单,不影响开发流程;多平台支持,包括 Windows、macOS 和 Linux;社区活跃,持续更新。通过 nvm,开发者可以轻松安装、切换和管理不同项目的 Node.js 版本,提高开发效率。
|
3天前
|
C++
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
HTML+JavaScript构建一个将C/C++定义的ANSI字符串转换为MASM32定义的DWUniCode字符串的工具
|
2月前
|
JavaScript 小程序 Java
【工具】用nvm管理nodejs版本切换,真香!
本文详细介绍了如何使用 nvm(node.js 版本管理工具)解决在不同项目间频繁切换 Node.js 版本的问题。通过实例展示了 A、B 两个项目分别依赖 v14.19.1 和 v16.15.0 版本时的解决方案,并提供了 nvm 的下载、安装及常用命令等实用信息,帮助读者轻松管理 Node.js 版本。文章还包括了卸载已安装的 Node.js、配置环境变量等步骤,确保切换顺畅无阻。
61 0
【工具】用nvm管理nodejs版本切换,真香!
|
2月前
|
JavaScript IDE 前端开发
前端开发工具配置 nodejs & git & IDE
前端开发工具配置 nodejs & git & IDE
|
3月前
|
人工智能 前端开发 Devops
NET技术在现代开发中的影响力日益增强,本文聚焦其核心价值,如多语言支持、强大的Visual Studio工具、丰富的类库和跨平台能力。
【7月更文挑战第4天】**.NET技术在现代开发中的影响力日益增强,本文聚焦其核心价值,如多语言支持、强大的Visual Studio工具、丰富的类库和跨平台能力。实际应用涵盖企业系统、Web、移动和游戏开发,以及云服务。面对性能挑战、容器化、AI集成及跨平台竞争,.NET持续创新,开发者应关注技术趋势,提升技能,并参与社区,共同推进技术发展。**
31 1
|
4月前
|
存储 JavaScript 前端开发
Node.js 常用工具
Node.js 常用工具
27 1
|
3月前
|
JavaScript 数据安全/隐私保护
node.js 命令行的命令注册和配置工具(最新版) commander.js 实用教程(含自研脚手架的创建流程)
node.js 命令行的命令注册和配置工具(最新版) commander.js 实用教程(含自研脚手架的创建流程)
99 0
下一篇
无影云桌面