VSCode中Node/npm报错是PowerShell执行策略和PATH未生效双重问题:需先设CurrentUser为RemoteSigned并重启终端,再向terminal.integrated.env.windows添加双反斜杠路径并完全重启VSCode。

VSCode 里 node 或 npm 报“无法识别”或“禁止运行脚本”,根本不是 Node 没装好,而是 PowerShell 执行策略 + 路径没生效的双重问题。单独改一个,大概率还是报错。
PowerShell 执行策略卡住 npm、pnpm、ts-node 等命令
PowerShell 默认是 Restricted 模式,连你自己本地写的 .ps1 都不放行——而 npm、pnpm、yarn 在 Windows 上安装后实际是 wrapper 脚本(npm.ps1),不是纯 exe。
- 执行
Get-ExecutionPolicy -List,看CurrentUser这一行是不是Restricted - 只运行
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force,别加LocalMachine,普通用户没权限,且容易被域策略覆盖 - 改完必须关掉所有 VSCode 终端窗口,再新开一个——PowerShell 进程不重启,新策略不加载
- 别用
Bypass或Unrestricted:开发环境不需要彻底关掉安全检查
node 命令找不到,其实是路径没进 VSCode 终端的 $env:PATH
nvm-windows 安装的 Node 路径不在系统默认位置(比如 D:
vm4w
odejs),VSCode 启动时读的是旧的环境变量快照,不会自动感知 nvm 切换后的路径。
生成Blender Python (bpy)脚本,该脚本使用node_groups API和GeometryNodeTree接口程序化地创建几何节点修改器树,用于参数化3D资产生成。
- 临时验证:在 VSCode 的 PowerShell 终端里直接运行
$env:Path += ";D: vm4w odejs",再试node -v - 永久生效:打开
Ctrl + Shift + P→Preferences: Open Settings (JSON),加这段:
{
"terminal.integrated.env.windows": {
"PATH": "${env:PATH};D:\nvm4w\nodejs"
}
}
- 注意路径里的反斜杠要双写(
D:\nvm4w\nodejs),JSON 里单反斜杠会转义失败 - 改完必须完全退出 VSCode(不只是关窗口),再重开,否则 PATH 不刷新
路径含空格或中文时,.xxx.ps1 依然失败
就算执行策略开了,PowerShell 对路径里的空格和中文依然敏感。它不会自动加引号,也不会默认调用脚本。
- 错误写法:
.my script.ps1或C:项目启动.ps1 - 正确写法必须同时满足两点:
&操作符 + 双引号包裹完整路径 - 例如:
&".my script.ps1"、&"C:项目启动.ps1" - 漏
&:PowerShell 当成命令名解析;漏引号:空格/中文被截断,报“找不到命令”
最常被忽略的是:改了执行策略但没重启终端,或者改了 PATH 但没完全退出 VSCode。这两步缺一不可,而且顺序不能颠倒——先让 node 找得到,再让 npm.ps1 跑得起来。

















