在 Windows 系统中使用 PowerShell 时出现 “无法加载文件 npm.ps1” 的错误,通常是由于系统的执行策略(Execution Policy)限制了脚本运行,这是 PowerShell 的安全机制导致的。以下是具体解决方法:
解决步骤:
- 
以管理员身份打开 PowerShell- 点击「开始菜单」,搜索 “PowerShell”
- 右键选择「以管理员身份运行」(必须管理员权限才能修改执行策略)
 
- 
查看当前执行策略
 在 PowerShell 中输入以下命令,查看当前的脚本执行限制:powershellGet-ExecutionPolicy 若返回Restricted(默认值),表示禁止运行任何脚本,这就是导致 npm.ps1 无法加载的原因。
- 
修改执行策略
 输入以下命令,将执行策略修改为允许运行本地脚本(不会影响远程下载的未签名脚本):powershellSet-ExecutionPolicy RemoteSigned 
- 
确认修改
 执行命令后会提示确认,输入Y并回车(或直接按 Enter 键确认)。
- 
验证是否生效
 再次输入查看执行策略的命令,确认已修改为RemoteSigned:powershellGet-ExecutionPolicy 
- 
测试 npm 是否可用
 关闭当前 PowerShell 窗口,重新打开一个普通的 PowerShell 或命令提示符,输入:powershellnpm -v 若能正常显示版本号,说明问题已解决。
原理说明:
PowerShell 的 
RemoteSigned 策略允许运行:- 本地创建的脚本(无需数字签名)
- 从网络下载的脚本(必须有可信数字签名)
这既保证了基本安全性,又能解决 npm 脚本无法运行的问题。如果后续需要恢复默认策略,可再次以管理员身份运行 
Set-ExecutionPolicy Restricted。