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

配置type:module后导入router提示ERR_MODULE_NOT_FOUND错误如何解决?

错误原因及修复方案

该报错符合Node.js ESM模块规范的限制,和你配置的"type":"module"规则不匹配,按以下步骤修改即可解决:

  • 补全相对导入的文件扩展名
    Node.js ESM规范不支持自动补全相对路径的文件后缀,你在根目录index.js中导入router的语句缺少.js后缀,修改如下:
// 原错误写法
import { router } from './router/index'
// 修改后正确写法
import { router } from './router/index.js'
  • 统一使用ESM语法,不要混用CommonJS的require语法
    你的router/index.js中同时使用了require和ESM的import/export,项目配置"type":"module"后不支持require写法,修改express的导入语句:
// 原错误写法
const express = require('express')
// 修改后正确写法
import express from 'express'
  • (可选检查)其他相对导入路径同步补全后缀
    比如router/index.js中导入userController的语句也要补全.js后缀,避免后续再出现同类报错:
import userController from '../controllers/user-controller.js'

修改完成后重启服务即可正常运行。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 19:15:04