Node JS - Passage Javascript de l'objet par référence à d'autres fichiers
J'ai défini un serveur http en exigeant comme suit:
var http = require('http');
function onRequest(request, response) {
console.log("Request" + request);
console.log("Reponse" + response);
}
http.createServer(onRequest).listen(8080);
Je voudrais passer le http objet d'un JS classe (dans un fichier séparé) où je charger des modules externes qui sont spécifiques à ma demande.
Des suggestions sur comment puis-je faire?
Grâce,
Marque
OriginalL'auteur Mark Gia Bao Nguyen | 2011-10-26
Vous devez vous connecter pour publier un commentaire.
Oui, jetez un oeil à la façon de faire des modules: http://nodejs.org/docs/v0.4.12/api/modules.html
Chaque module a un objet spécial appelé
exports
qui seront exportés lorsque d'autres modules de l'inclure.Par exemple, supposons que votre exemple de code est appelé
app.js
, vous ajoutez la ligneexports.http = http
et dans un autre fichier javascript dans le même dossier, l'inclure avecvar app = require("./app.js")
, et vous pouvez avoir accès à http avecapp.http
.OriginalL'auteur Nican
Vous n'avez pas besoin de passer le http objet, parce que vous pouvez exiger à nouveau dans d'autres modules. Node.js sera de retour le même objet à partir du cache.
Si vous avez besoin de passer de l'objet de l'instance de module, un peu dangereux option est de le définir comme global (sans le mot-clé var). Il sera visible dans d'autres modules.
Alternative plus sûre est de définir le module de cette
Et l'importation de cette
OriginalL'auteur Teemu Ikonen