Felixge / Node-Mysql独立连接文件
我正在尝试在节点中为我的节点应用程序使用felixge / node-mysql。 但是,而不是通常的
mysql.createConnection(...)
在app.js中,我希望它作为“configuration”文件分开。 现在在我的config.js是这样的:
function localConnect(){ //Node Mysql dependency npm install mysql@2.0.0-alpha7 return require('mysql').createConnection({ hostname: 'localhost', user: 'username', password: 'password', database: 'database' }); }
和在应用程序js:
... //Node Mysql dependency npm install mysql@2.0.0-alpha7 var mysql = require('mysql'); //MYSQL database config file var connection = require('./config.js').localConnect(); connection.connect();
和connection.connect()失败。
目的是让我可以提交到我的回购,而不暴露我的数据库连接信息,并仍然为用户提供一个dbSample文件,因为他们希望使用它。
有什么build议么?
谢谢!
根据Nick的提示,我不知道在Node中导出,下面的代码适用于config.js:
var mysql = function localConnect(){ //Node Mysql dependency npm install mysql@2.0.0-alpha7 return require('mysql').createConnection({ hostname: 'localhost', user: 'username', password: 'password', database: 'database' }); } module.exports.localConnect = mysql;
在app.js中:
//MYSQL database config file var connection = require('./config.js').localConnect(); connection.connect(); //Successful
另外一个select:
DB-config.js
module.exports = { hostname: 'localhost', user: 'username', ... };
db.js
var config = require('./db-config'); module.exports = require('mysql').createConnection(config);
app.js
var db = require('./db.js'); db.query('SELECT ?', [ 1 ], function (err, data) { ... });