You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行ng --version等ng命令时打开VS Code的ng.js文件,无法获取版本

解决ng命令触发VS Code打开ng.js而非执行命令的问题

问题根源

这种情况几乎都是Windows系统的.js文件关联错误导致的:系统把全局Angular CLI的ng.js脚本当成普通文本文件,用默认关联的VS Code打开,而不是调用Node.js去执行它。此外,Node.js全局脚本路径未加入系统PATH也可能加剧这个问题。

解决方案

1. 确认Node.js全局脚本路径在系统PATH中

  • 打开终端(CMD/PowerShell),执行:
    npm config get prefix
    
    得到的路径(通常是C:\Users\<你的用户名>\AppData\Roaming\npm)必须出现在系统环境变量的PATH中:
    • 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」→ 在「系统变量」中找到PATH,检查是否包含上述路径,若没有则添加,添加后必须重启所有终端。

2. 修复.js文件的默认执行关联

以管理员身份打开CMD,依次执行以下命令:

# 将.js文件关联到Node.js执行
ftype JSFile=node.exe "%1" %*
# 绑定.js后缀到JSFile类型
assoc .js=JSFile

执行完成后重启终端,测试ng --version是否正常输出。

3. 重新安装Angular CLI(确保全局安装无损坏)

依次执行以下命令:

# 卸载全局Angular CLI
npm uninstall -g @angular/cli
# 强制清理npm缓存
npm cache clean --force
# 重新安装最新版全局Angular CLI
npm install -g @angular/cli@latest

安装完成后执行ng version(Angular CLI v6+支持简化命令)验证结果。

4. 验证Node.js脚本执行能力

创建一个测试文件test.js,内容为:

console.log("Node.js脚本执行正常");

在终端执行test.js,若直接输出内容则说明文件关联修复成功;若仍打开VS Code,重复步骤2的命令。

额外注意事项

  • 所有环境变量或文件关联修改后,必须重启终端才能生效,不要在原有终端窗口测试。
  • 若PowerShell提示执行权限问题,以管理员身份打开PowerShell并执行:
    Set-ExecutionPolicy RemoteSigned
    
    允许执行本地脚本即可。

内容的提问来源于stack exchange,提问作者Hadil Kraiem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 23:46:00