Ho appena iniziato a utilizzare una nuova versione di Express (2.5.5) che di default crea una directory ./routes
con ./views
e ./public
Come accedere alle variabili dichiarate nell'app.js principale in file di percorso separati in node.js Express 2.5.5?
All'interno di percorsi v'è un file che contiene index.js
:
/*
* GET home page.
*/
exports.index = function(req, res){
res.render('index', { title: 'Express' })
};
per default (dopo l'esecuzione express
dal comando) e questa è la sezione rotte nella principale app.js
:
// Routes
app.get('/', routes.index);
ho impostato una variabile per un cliente Redis nella principale app.js
:
var redis = require('redis'),
db = redis.createClient();
e mi chiedevo come avrei potuto accedere ai metodi di db
(e qualsiasi altri moduli di I require
in app.js
) nei file contenuti in ./routes
I don Non so se questa è una buona pratica, ma potresti avere i moduli avvolti in una funzione 'exports.init' che prende le istanze condivise come argomenti. Quella funzione restituirebbe le funzioni di esportazione effettive e richiederai il file come 'var routes = require (" ./ routes/"). Init (db);'. – pimvdb