app.jsとインポートされたファイルの間でオブジェクトを共有できません。異なるファイル間でオブジェクトを共有するnodeJs
app.js
'use strict';
module.exports = require('./lib/express');
var express = require('express');
var session = require('express-session');
var bodyParser = require('body-parser');
var sql = require('./lib/sqlRequete');
var app = express();
// Init database
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '',
database : 'master2i'
});
connection.connect();
app.post('/ajaxRequete', urlencodedParser, function(req,res){
sql.formerSql(req.body);
});
app.listen(port,function(){
console.log("Le serveur est lancé et écoute sur le port "+port);
});
sqlRequete.jsがapp.jsから変数とオブジェクトにアクセスすることができない
'use strict';
var exports = module.exports = {};
exports.formerSql=function(req){
var SQL;
switch(req.action){
case 'login':
SQL = "SELECT * FROM users WHERE pseudo ='" + req.pseudo + "' AND pass = '" + req.psw + "'";
this.executeSql(SQL,'SELECT');
break;
}
}
exports.executeSql=function(requete, type){
switch(type){
case 'SELECT':
connection.query(requete, function(err,rows,fields){
if (err){
throw err;
}else{
console.log('The solution is: ',rows);
}
});
break;
}
}
sqlRequete.js。 例として、私はアクセスできませんconnection
解決策は何ですか?コードをどのように構造化すればよいですか?
を渡します任意のオブジェクト? –
この場合、接続は変更されないため、これが機能します。しかし、app.jsで値が変化する変数やオブジェクトがあれば、それらはsqlRequete.jsで非推奨になりますか? – AnonBird