Szenario: Betrachten Sie das Folgende ist der Teil des Codes von einer Node Web App.Wann next() und next() in Node.js verwendet werden soll
app.get('/users/:id?', function(req, res, next){
var id = req.params.id;
if (id) {
// do something
} else {
next(); //or return next();
}
});
Ausgabe: Ich bin Überprüfung, welche mit nur next()
oder return next()
zu gehen. Der obige Beispielcode funktioniert genau gleich für beide & zeigte keinen Unterschied in der Ausführung.
Frage: Kann jemand Put-Licht auf diese, wenn next()
zu verwenden und wenn return next()
und einige wichtige Unterschied zu benutzen?
Können wir Parameter senden wie: 'next ('No ID')'? –
'next ('No ID')' sendet tatsächlich einen Fehler, der den Fluss unterbricht. – drinchev
Verwenden Sie next (null, "somevalue"); Bei Tools wie async.waterfall wird der Wert an die nächste Funktion übergeben. Für komplexe Reihe von Interaktionen, die datengesteuert sind, übergebe ich normalerweise ein Kontextobjekt zwischen Funktionen. Auf diese Weise kann ich generische Funktionen erstellen, die über mehrere Endpunkte verteilt werden können und den Fluss über Daten im Kontext steuern. –