我试图将一个变量从我的 app.js 传递到另一个文件,但我总是得到相同的输出 {}。如果我将所有与数据库相关的代码放在另一个文件中,然后从那里导出我需要的变量,我知道这可以通过其他方式完成。但为什么这不起作用?
应用程序.js
const express = require('express');
const bodyParser = require('body-parser');
const cors = require('cors');
const mysql = require('mysql');
const session = require('express-session');
const MySQLStore = require('express-mysql-session')(session);
const userRouter = require('./userRoutes');
const app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use(cors());
app.disable('x-powered-by');
const pool = mysql.createPool({
connectionLimit: 10,
host: "localhost",
user: "root",
password: "12345",
database: "shop"
});
const sessionStore = new MySQLStore({},pool);
app.use(session({
secret: 'ultimatesecret',
resave: false,
saveUninitialized: false,
store: sessionStore
}));
app.use('/User',userRouter);
app.get('/',(req,res) => {
pool.getConnection((err,con) => {
if (err) throw err;
console.log("Connected as id " + con.threadId);
})
res.send('Hello World')
})
app.listen(9999,'0.0.0.0',() => {
console.log('Server is up and running on port 9999');
});
module.exports = pool;
另一个文件:
const pool = require('./app');
const mysql = require('mysql');
console.log(pool);
输出为 {}