- 问题描述 使用nvm安装的node,输入“win”+R,输入cmd,检查npm -v可以正常输出npm版本号,但是在VS Code中打开终端,默认使用的是powershell终端,这时候输入npm -v就会报错
2.解决方法
解决方案一
- 这里需要通过Powershell修改本机的权限来解决
- 搜索Powershell并且以管理员权限运行
- 打开之后输入下面的命令即可
PS C:\Users\Administrator> Get-ExecutionPolicy
Restricted
PS C:\Users\Administrator> Set-ExecutionPolicy RemoteSigned
执行策略更改
执行策略可帮助你防止执行不信任的脚本。更改执行策略可能会产生安全风险,如 https:/go.microsoft.com/fwlink/?LinkID=135170
中的 about_Execution_Policies 帮助主题所述。是否要更改执行策略?
[Y] 是(Y) [A] 全是(A) [N] 否(N) [L] 全否(L) [S] 暂停(S) [?] 帮助 (默认值为“N”): y
PS C:\Users\Administrator>
- 执行完上面这个以后,管理员权限打开VSCode 若仍然无法运行npm命令,则需继续往下执行
- 可能是npm这个命令被其他的命令占用了。
- 再使用管理员权限运行Powershell
- 输入get-command npm查看一下
- 会有环境变量的命令占用了npm,而且就在显示的路径下有个npm的文件
- 需要在此电脑文件夹里找到对应位置的文件。
- 并且删掉这个文件,重启Powershell以及VSCode终端就可以正常使用npm命令了。
解决方案二
切换VS Code的默认终端为cmd,具体实现步骤
- 首先打开VS Code,点击设置找到命令面板或者Ctrl+shift+p打开命令面板
- 输入Terminal:Select Default Profile点击进去。
- 选择cmd为配置文件
- 配置完成后可以新建终端,就可以使用cmd终端了