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

如何在VS Code中开启mjs文件的跨模块类型检查功能

问题根因

你遇到的两个问题核心原因如下:

  1. VS Code默认使用自带的稳定版TypeScript,版本低于4.5,无法识别node12作为module选项的合法值,因此抛出配置错误
  2. 默认配置没有显式包含.mjs后缀文件,TypeScript不会主动对这类文件做类型检查

修复步骤

  • 切换工作区TypeScript版本到你安装的4.5 beta版
    打开任意JS/TS文件,按下快捷键Ctrl+Shift+P(Mac系统为Cmd+Shift+P),搜索并选择TypeScript: Select TypeScript Version,在弹出的列表中选中项目node_modules下安装的4.5 beta版本,不要使用VS Code自带的版本。
  • 修正jsconfig.json配置
    将配置改为如下内容:
    {
      "compilerOptions": {
        "module": "Node12",
        "moduleResolution": "Node12",
        "checkJs": true,
        "target": "ESNext"
      },
      "include": [
        "**/*.js",
        "**/*.mjs"
      ]
    }
    
  • 确认.mjs文件关联正确
    打开VS Code设置,搜索files.associations,确认配置项中存在"*.mjs": "javascript",避免文件被识别为其他格式导致类型检查失效。
  • 重启TypeScript服务
    按下快捷键Ctrl+Shift+P,搜索并选择TypeScript: Restart TS Server,等待服务重启完成后,.mjs文件的跨模块类型检查即可生效。

补充说明

如果后续使用TypeScript 4.5及以上正式版,无需额外调整配置,按上述步骤操作即可生效。也可以将jsconfig.json替换为tsconfig.json,额外增加allowJs: true配置项,效果完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 01:18:03