中有条件地传递数据"/>
在Express JS路由中有条件地传递数据
在这里表达js问题。我想检查是否在请求中传递了{id}。如果传递了ID,则显示与ID相关的帖子/信息,否则,显示所有帖子。
我尝试过
const posts = [{},{}]
app.get('/posts/:id',(req,res)=>{
if(!req.params.id){
return res.render('posts')
}
else{
const fpost = posts.filter((post)=>{
return post.id == req.params.id
})[0]
res.render('posts',{filterdPost:fpost})
}
})
但尝试获取没有ID的帖子时失败。我只需要为帖子创建一条单独的路线吗?
回答如下:您可以使用?运算符将参数设置为可选。
/post/:id?
更多推荐
在Express JS路由中有条件地传递数据
发布评论