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

Node.js+MongoDB开发REST API时出现MODULE_NOT_FOUND找不到模块错误

问题原因及解决方案

错误1:Cannot find module '../models/book'

  • 错误原因:存储Book模型的文件名为userModel.js,但你在routes/users.js第3行的引入语句var Book = require('../models/book');中,指定的路径对应文件是models/book.js,二者不匹配导致Node.js找不到对应模块。
  • 解决方法(二选一即可):
    1. 将models目录下的userModel.js重命名为book.js
    2. 将routes/users.js第3行的引入代码修改为:var Book = require('../models/userModel');

错误2:Cannot find module './routes/books'

  • 错误原因:你在app.js第9行写了const books = require('./routes/books');,还在第22行注册了app.use('/books', books);路由规则,但你的routes目录下并没有创建books.js路由文件,因此触发模块找不到的报错。
  • 解决方法(二选一即可):
    1. 如果你不需要单独的books路由接口,直接删除app.js中的两行相关代码即可:
    const books = require('./routes/books');
    app.use('/books', books);
    
    1. 如果你需要使用books路由,在routes目录下新建books.js文件,编写对应的路由逻辑即可。

额外注意项

你的数据库连接文件命名为Database.js,Windows系统对文件名大小写不敏感不会触发问题,但部署到Linux服务器时大小写敏感会导致找不到模块,建议统一将文件名改为小写database.js,规避后续部署风险。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 05:45:08