var s_bookingController = require('s/controllers);
app.get('/dashboard/:page/:param', s_bookingController.index)
app.get('/dashboard/show/:id', s_bookingController.show);
контроллеры:Как использовать следующий() правильно в маршрутах (Node.js)
exports.index = function(req, res, next) {
var page = parseInt(req.param("id"));
data = {};
data.page = page;
data.nextPage = page + 1;
data.prevPage = page - 1;
MyModel.find().sort('brand').skip((page-1)*11).limit(11).exec(function(err, result) {
res.render('index', {
data: data,
booking: result,
});
});
};
И
exports.show = function(req, res, next) {
var id = req.param("id");
res.send(id);
};
Я использую эти контроллеры, но есть что-то не так с код exports.index
, потому что он застрял в коде.
Если изменить маршруты на:
app.get('/dashboard/:page', s_bookingController.index)
(Обратите внимание, что я взлетать второй параметр, который я проходил)
шоу будет работать, но если я использую второй параметр , показ не будет запущен, он застрянет на индексной странице.
Почему это? Мне было интересно, нужно ли мне использовать next();
.
Поместите маршрут 'show' выше первого –
отсутствует тег? (узел не определяет приложение или маршруты) – dandavis
Возможный дубликат [С трудом пытаясь понять «next/next()» в express.js] (http://stackoverflow.com/questions/8710669/having-a -hard-time-try-to-understand-next-next-in-express-js) – Seth