Estoy empezando con NodeJS y Express 4, y estoy un poco confundido. He estado leyendo el sitio web de Express, pero no puedo ver cuándo usar un controlador de ruta o cuándo usarlo express.Router
.
Como pude ver, si quiero mostrar una página o algo cuando el usuario golpea, /show
por ejemplo, debería usar:
var express = require('express')
var app = express()
app.get("/show", someFunction)
Al principio, pensé que esto era viejo (para Express 3). ¿Es correcto o este también es el camino para Express 4?
Si esta es la forma de hacerlo en Express 4, ¿ express.Router
para qué se utiliza?
Leí casi el mismo ejemplo que el anterior pero usando express.Router
:
var express = require('express');
var router = express.Router();
router.get("/show", someFunction)
Entonces, ¿cuál es la diferencia entre ambos ejemplos?
¿Cuál debo usar si solo quiero hacer un sitio web de prueba simple?
app.get(..)
sintaxis es solo un atajo para que trabajar sea express.router
más conveniente. Si recién comienza, no se preocupe por los detalles del enrutador.
app's
propios métodos de enrutamiento, como por ejemplo app.get()
, son suficientes para sus necesidades, úselos. El Router
está ahí sólo por conveniencia para ayudar a organizar la aplicación a través de múltiples módulos. De la guía : " La express.Router
clase se puede utilizar para crear controladores de ruta montables modulares. Una Router
instancia es un middleware completo y un sistema de enrutamiento; por esta razón, a menudo se lo conoce como una" mini aplicación " "
Router
no acepta.listen()
solicitudes por sí solo. Es útil para separar su aplicación en múltiples módulos, creando unoRouter
en cada uno queapp
puedarequire()
y.use()
como middleware.