与 Express JS 的目录混淆

Directory confusion with Express JS

本文关键字:Express JS      更新时间:2023-09-26

要要求我们自己的模块,目录结构应该是什么样子的?例如,如果名为 modules 的文件夹中的模块需要数据库文件夹中的模块,它会如下所示吗?

var db = require('./database/db.js')

面临的问题是我有这段代码需要我的一个模块:

//Require mysql connector that you installed with npm
var mysql      = require('./mysql_conn');

这是我的目录结构:

http://prntscr.com/1yfsej

需要模块的文件位于 routes 文件夹中,该文件位于 db 文件夹中。我不断收到此错误:

http://prntscr.com/1yfsjb

需要使用 npm 安装的 mysql 连接器 var mysql = require('./mysql');

var conn_conf = { 主机 : "本地主机", 端口 : 3306, 用户 : '根', 密码:"根", 数据库 : 'nutrition_tracker' }

      var connection = mysql.createConnection(conn_conf);
  exports.connection.connect(function(err) {
   if(err) console.log("Could not connect to DB");
    else{
    console.log("Connected to "+conn_conf.database+' on '+conn_conf.host );
    return connection
    }
});

你可以"要求"用户编写的模块,没有js扩展名,比如

var db = require('./database/db')

对于另一个模块,您需要将 mysql_conn wrt 引用到 db 文件。

//Require mysql connector that you installed with npm
var mysql      = require('../mysql_conn');