我正在创建一个应用,其中每个列表将具有多个任务。
用于创建新任务的URL类似于/lists/:listId/tasks
在我的app.js
中,我正在将该URL重定向到名为tasks.js
的特定路由文件:
app.use('/lists/:listId/tasks', tasks);
然后在我的tasks.js
中,我正在执行以下操作:
router.post('/', (req, res) => {
console.log(req.params.listId) //This doesn't work.
});
如何从tasks.js
中获取参数?。另外,如果有更好的方法来实现我想要的功能,我将非常高兴看到它。
我认为这应该起作用
app.get('/lists/:listId/tasks', (req, res) => {
console.log(req.params.listId);
})
重定向!试试这个
app.get('/lists/:listId/tasks', (req, res) => {
console.log(req.params.listId);
//if you have a route set up already
res.redirect('/task');
})
您可以点击此链接https://github.com/expressjs/express/issues/696
如果将参数路由放置到tasks.js
文件,则该问题将自动解决。喜欢:
在app.js
中
app.use('/lists', tasks);
在tasks.js
中
router.post('/:listId/tasks', (req, res) => {
console.log(req.params.listId);
});
它将正常工作。