升级到 Express 3.0 后,我的节点应用程序出现了一些问题。所以,由于我正在重写它,我试图遵循它的风格,routes/index.js
因为它看起来很干净。
所以,我主要app.js
有一些变量,例如:
var calls = 0;
var agents = [];
并且还使用该node-mysql
模块。但是,路由定义没有app.js
范围,而是它们自己的范围,因此calls
不agents
可见。
我应该如何让它们可见?
对于 mysql,我尝试了类似的方法:
// libraries/mysql.js
mysql = require('mysql');
var mysql_conf = {
host: myhost,
user: myuser,
password: mypass,
database: mydb
};
var mysql_client = mysql.createClient(mysql_conf);
exports.mysql_client;
//Later in routes/index.js
mysql_client = require('../helpers/mysql.js');
但它似乎不像它所说的那样工作TypeError: Object #<Object> has no method 'query'
请问有什么提示吗?