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

如何在main.js中导入外部JS文件?为何出现模块未找到错误

解决Node.js中ES模块导入报错 ERR_MODULE_NOT_FOUND

出现Error [ERR_MODULE_NOT_FOUND]的原因及对应解决方法如下:

1. 导入路径缺少文件扩展名

Node.js的ES模块规范要求导入时必须明确指定文件扩展名,无法像CommonJS那样省略后缀。你当前的导入语句import countries from "./countries";未添加.js后缀,导致Node.js无法定位目标文件。

修正后的导入代码:

import countries from "./countries.js";
console.log(countries);

2. 文件路径或文件名错误

  • 确认countries.js与main.js处于同一目录,若文件不在同级目录,需调整路径(比如子目录写./subfolder/countries.js,上级目录写../countries.js)。
  • 检查文件名拼写和大小写:Linux/macOS系统区分文件名大小写,确保countries.js的拼写、大小写与导入语句完全一致(避免出现Countries.js这类错误)。

3. Node.js未启用ES模块支持

Node.js默认使用CommonJS模块系统,要使用import/export语法,需通过以下方式开启ES模块支持:

  • 在项目根目录创建package.json文件,添加"type": "module"字段:
    {
      "type": "module"
    }
    
  • 或者将所有相关文件的扩展名改为.mjs(比如main.mjs和countries.mjs),Node.js会自动将.mjs文件识别为ES模块。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 04:33:23