You need to enable JavaScript to run this app. ExpressJS项目引入自定义类报import相关语法错误如何解决?
优惠活动
大模型
产品
解决方案
定价
更多

ExpressJS项目引入自定义类报import相关语法错误如何解决?

问题分析与解决方案

核心原因

Node.js 默认使用 CommonJS 模块规范,仅支持 require() 导入、module.exports 导出的语法,你使用的 import/export 属于 ES 模块规范,默认不被支持,因此触发报错:

SyntaxError: Cannot use import statement outside a module

可选解决方案

你可以任选以下一种方案解决问题:

  • 方案1:将项目切换为 ES 模块模式
    找到项目根目录下的 package.json 文件,在顶层配置中添加 "type": "module" 字段,添加后项目内所有 .js 文件都会被识别为 ES 模块,可直接使用 import/export 语法。
    注意:切换为 ES 模块后,不能再使用 CommonJS 专属的 require()、__dirname、__filename 等语法和变量,如有需要要自行适配。
  • 方案2:沿用 CommonJS 规范修改代码
    不用修改项目配置,直接调整你写的模块导出导入逻辑即可:
    1. 修改 /routes/MyClass.js 的导出语句,将 export default MyClass; 替换为 module.exports = MyClass;
    2. 修改 /routes/index.js 的引入语句,将 import MyClass from './MyClass'; 替换为 const MyClass = require('./MyClass');

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.21 21:36:09