express / node.js – 如何将路由parameter passing给其他文件?
遇到了一个奇怪的错误,如果我在route / posts / index.js中定义了如此的路由:
router.use('/:id/edit', require('./edit'));
在./edit里面,我有这样定义的端点:
router.post('/', passport.authenticate('jwt', { session: false}), function(req, res){
如果我点击/ posts /:id / edit,我成功地在./edit中打了端点,但是const id = req.params.id;
将是未定义的。 但是,如果我直接在routes / posts / index.js中定义路由,则会定义req.params.id
。
让./edit中的path“识别”id参数的正确方法是什么?
您可以通过将{mergeParams: true}
传递给express.Router()
来合并父路由器参数。