Ich möchte mehrere Argumente in modules.exports
übergeben. Mein Code geht in etwa so:Übergabe mehrerer Argumente im Exportmodul
folgende Datei ist ein Code-Snippet index.js
var express = require('express');
var app = express();
var number = 100;
require('./app/routes')(app, number); // pass our application into our routes
Es folgt ein Code-Snippet routes.js
module.exports = function(app, number){
app.get('/api/control', function(req,res){
res.send("done");
});
app.post('/api/control', function(req,res){
console.log(number);
console.log(req.body);
res.send("done");
});
}
Das Problem ist, wenn überhaupt ein POST-Anfrage wird gemacht, console.log(number);
druckt undefined
am Terminal, wo, wie wenn ich drucke, wenn ich number
durch app
in console.log()
ersetze, druckt es alle Funktionen von app
.
Ich habe auch versucht, die Positionen von app
und number
zu wechseln, dann warf es einen Fehler, der app
nicht existiert.
ist 'require ('./ app/routes')' wirklich mit Ihrer 'app.js'? Ist es nicht eine andere Datei? –
versuchen Sie dies zu sehen, was passiert? 'require ('./ app/routes') (app, 100);' – ricky
@pierre, entschuldigung, das war ein Tippfehler –