Группы маршрутов с помощью Router в Express

Маршруты, имеющие частично совпадающие адреса, удобно объединять в группы. Давайте посмотрим, как это делается. Пусть у нас есть следующий набор маршрутов:

app.get('/user/show/:id', function(req, res) { }); app.get('/user/edit/:id', function(req, res) { });

Как вы видите, эти маршруты имеют общую часть /user. Давайте вынесем ее отдельно. Для этого для нашей группы маршрутов мы должны создать отдельный роутер с помощью метода Router:

let userRouter = express.Router();

Прицепим теперь наши маршруты к созданному роутеру, убрав совпадающую часть адреса:

userRouter.get('/show/:id', function(req, res) { }); userRouter.get('/edit/:id', function(req, res) { });

Теперь привяжем наш роутер к app в качестве маршрута, указав при этом совпадающую часть адреса:

app.use('/user/', userRouter);

Разбейте следующие маршруты по группам:

app.get('/city/show/:id', function(req, res) { }); app.get('/city/edit/:id', function(req, res) { }); app.get('/country/list', function(req, res) { }); app.get('/country/show/:id', function(req, res) { }); app.get('/country/edit/:id', function(req, res) { });