En este artículo veremos cuándo usar next() y devolver next() en NodeJS.
Características:
- next() : ejecutará o ejecutará el código después de que finalice toda la función de middleware .
- return next() : Al usar return next saltará la devolución de llamada inmediatamente y el código debajo de return next() será inalcanzable.
Sintaxis:
next()
return next()
app.use((req, res, next) => { //next() or return next() });
En la función app.use((req, res, next), tenemos tres devoluciones de llamada, es decir, solicitud, respuesta y siguiente .
Entonces, si desea usar next(), simplemente escriba next() y si desea usar return next, simplemente escriba return next().
Entendamos estos dos con un ejemplo.
Uso de next(): si tiene alguna función de middleware y debajo de next() tiene algunas líneas o funciones que desea ejecutar, luego, al usar next() , puede ejecutar las líneas o funciones porque ejecuta el código siguiente .() después de que todas las funciones de middleware hayan terminado.
Uso de return next(): si tiene alguna función de middleware y debajo de return next() tiene algunas líneas que desea ejecutar, entonces las líneas que están debajo de return next() no se ejecutarán porque saltarán del devolución de llamada inmediatamente y el siguiente código return next() en la devolución de llamada será inalcanzable.
Ejemplo: configurar el entorno
npm init -y
- Instalación de dependencias
npm install express
Javascript
import express from "express" const app = express() // API for the testing of next() app.get( '/next', function (req,res,next) { console.log('hi there '); next(); console.log('you are still here'); } ) // API for the testing of return next() app.get( '/return-next', function (req,res,next) { console.log('hi there'); return next(); console.log('you are still here'); } ) app.listen(5000,()=> { console.log("App is running on port 5000") })
Producción :
- next(): Presiona ‘http://localhost:5000/next’ en tu navegador.
Aquí, la línea que está debajo de next() se ejecuta con éxito y se muestra » todavía estás aquí » en la salida.
- return next(): Presiona ‘http://localhost:5000/return-next’ en tu navegador.
Aquí, la línea que está debajo de return next() no se ejecuta y » todavía estás aquí » no se muestra en la salida.
Publicación traducida automáticamente
Artículo escrito por priyanshugupta627 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA