当我在Visual Studio 2015中使用package.json打开项目时,会自动启动npm安装,并且在安装完成之前VS无响应。
我更愿意从命令行自己运行npm install;如何阻止Visual Studio执行此操作?
答案 0 :(得分:75)
试试这个:
似乎不需要关闭解决方案等。 NPM和Bower功能现在在VS中被禁用,但在命令行上可以正常工作(假设您已全局安装npm,bower等)。您可能会在“输出”窗口中收到一些错误消息,但没有构建错误或警告。 / p>
要恢复正常操作,请返回外部网络工具,然后单击右下方的“重置为默认值” 我没有尝试使用Publish - 您可能必须恢复默认值才能成功发布,如果您在此时遇到错误,请尝试使用它。
答案 1 :(得分:61)
如果您升级到Visual Studio 2017(免费的社区版'很好),那么VS团队已经添加了一个选项,可以在项目打开时停止运行npm。它位于工具/选项/项目和解决方案/ Web包管理/包还原下。您可以在Project Open和package.json上禁用NPM(和Bower)还原。单独保存。
另请注意,对于node.js项目类型(NTVS)仅,VS2017中的自动包恢复行为目前已完全禁用。
编辑:上述答案也适用于Visual Studio 2019.菜单选项位于同一位置,但不推荐使用Bower支持。
答案 2 :(得分:4)
Visual Studio 2015 Update 2修复了此问题!安装Update 2,你应该很高兴。
直接下载:http://go.microsoft.com/fwlink/?LinkId=691129
更新2发行说明:https://www.visualstudio.com/news/releasenotes/vs2015-update2-vs
修改:" 已修复"可能不完全准确,并且可能并非完全已修复所有用户。也许我们可以确定每个人的体验。澄清一下,我的经验如下:
根据我的经验,修补后的VS将在打开.sln后运行  installpm'如果node_modules文件夹中缺少package.json中的任何依赖项(或者文件夹本身丢失了。)
您无法停用“npm install'”,因此'已修复'可能不太正确 - 但是,它并不像以前那样在每次发布时都这样做,所以我认为这是一场胜利。人们可以证实这是行为,还是我们遇到不同的行为?