我试图找出在我的express.js路由之间传递mysql连接(使用node-mysql)的最佳方法.我正在动态添加每个路由(在路由中使用for each文件循环),这意味着我不能只将连接传递给需要它的路由.我要么将它传递给每条路线,要么根本不传递.我不喜欢将它传递给那些不需要它的想法所以我创建了一个dbConnection.js,路由可以根据需要单独导入.问题是我不认为我正确地做到了.截至目前,我的dbConnection.js包含:
var mysql = require('mysql');
var db = null;
module.exports = function () {
if(!db) {
db = mysql.createConnection({
socketPath: '/tmp/mysql.sock',
user: '*********',
password: '*********',
database: '**********'
});
}
return db;
};
Run Code Online (Sandbox Code Playgroud)
我使用以下方法将其导入每条路线:
var db = require('../dbConnection.js');
var connection = new db();
Run Code Online (Sandbox Code Playgroud)
但我想这样做:
var connection = require('../dbConnection.js');
Run Code Online (Sandbox Code Playgroud)
然而,当我这样尝试时,我得到一个错误,当我尝试进行查询时,连接没有方法'查询'.