Node.js MODULE_NOT_FOUND报错:无法找到数据库模块求助
解决Node.js模块导入路径问题
可能的原因及对应解决方案
检查文件/文件夹大小写
在Linux或macOS环境下,Node.js对文件路径的大小写敏感。确认实际文件夹名是database、文件名是databaseConnection.js,和你require语句里的路径完全一致,避免大小写拼写差异导致的模块找不到问题。确认脚本的运行环境
如果LoginPageScript.js是作为前端脚本直接在浏览器中运行(比如通过index.html的<script>标签引入),Node.js的require()语法在浏览器环境中不被支持,必然会抛出模块找不到的错误。这种情况可以做以下调整:- 将
LoginPageScript.js改为后端脚本,由server.js调用执行; - 改用ES模块语法(
import { pool } from '../database/databaseConnection.js'),同时在项目根目录的package.json中添加"type": "module"配置; - 使用Webpack、Rollup等打包工具,将Node.js模块打包为浏览器可识别的代码。
- 将
验证相对路径的基准目录
相对路径的基准是你运行脚本时的工作目录,而非脚本文件本身所在的目录。比如你在/www/html/目录下执行node scripts/LoginPageScript.js,此时相对路径的基准是/www/html/,正确的导入路径应该是./database/databaseConnection.js而非../。可以在脚本中添加以下代码确认当前工作目录:console.log(process.cwd());检查文件是否真实存在
直接通过终端命令验证路径的正确性,比如在/www/html/scripts/目录下执行:ls ../database/databaseConnection.js如果命令返回文件不存在,说明确实存在文件缺失或路径拼写错误,需要核对文件实际位置。
内容的提问来源于stack exchange,提问作者NaviteLogger
相关产品推荐
相关产品推荐

