首先检查环境变量
检查nvm版本间接检查nvm是否配置成功
nvm -v
检查node版本
node -v
都显示对于的版本号则一切正常。
npm报错信息如果是
npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsof t.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 1 + npm + ~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess>
恭喜你,我能帮你解决了
- 打开一个管理员权限的 PowerShell 窗口。
- 运行
Get-ExecutionPolicy命令以查看当前的执行策略
如果输出结果为 Restricted,则需要将其更改为
RemoteSigned 或 Unrestricted。可以通过以下命令之一执行:Set-ExecutionPolicy RemoteSigned将执行策略更改为RemoteSigned。Set-ExecutionPolicy Unrestricted将执行策略更改为 Unrestricted。
RemoteSigned 策略的作用是允许在本地计算机上制作的数字签名的脚本运行,而不需要签署者是受信任的。这意味着你可以运行自己编写的未签名的脚本,但不能运行其他人编写的未签名脚本。因此选择RemoteSigned就ok了
Unrestricted 策略允许在本地计算机上运行任何脚本,包括未签名的脚本。这是一种不安全的策略,因为它可能允许恶意脚本运行并损害系统。因此,建议只在必要的情况下使用 Unrestricted 策略,并在使用后立即将其还原为更安全的策略
到这里问题就解决了,npm及其运行脚本的命令都可以运行了
拓展知识
-
- 检查 PATH 环境变量命令:
在终端和 cmd 中分别检查
PATH环境变量,确认npm的路径是否包含在内。你可以使用以下命令:- 在 cmd 中:
echo %PATH% - 在 PowerShell 中:
$Env:PATH - 在 Git Bash 或其他 Unix-like shell 中:
echo $PATH
-
Set-ExecutionPolicy RemoteSigned后面可跟其他属性
-
例如::Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Scope 参数允许你指定更改执行策略的范围。在 PowerShell 中,有三个可用的 Scope 值:
MachinePolicy:更改计算机级别的执行策略。这会影响这台计算机上所有用户和所有 PowerShell 会话中运行的脚本。UserPolicy:更改用户级别的执行策略。这会影响这个用户在这台计算机上所有 PowerShell 会话中运行的脚本。CurrentUser:更改当前用户的执行策略。这仅会影响当前用户在当前 PowerShell 会话中运行的脚本。