2017-04-26 43 views
0

如果我想避免大量else块和深度缩进,如果我想明确退出路由器函数,返回类型应该是什么?路由器功能的返回类型是什么?

app.get("/xx", function(req, res) { 
    if (c1) { 
     res.render("c1"); 
     return ??; 
    } 
    if (c2) { 
     res.render("c2"); 
     return ??; 
    } 
    res.render("default"); 
}) 

回答

1

这并不重要。这是一个异步函数,没有人愿意使用这个返回值,这样你就可以只返回undefined

res.render(...); 
return; 

,因为它并不重要,你也可以这样写:

return res.render(...); 

但我认为它看起来更具可读性两行。

0

相反的res.render()你应该使用res.send(),因为它会终止与发送的输出响应流。

+0

或者只是添加'return res.send()' –

+0

@UditKumawat,是'return res.render(“xx”)'还行吗? –

+0

不需要send,因为res.render()也会发送呈现的输出。请参阅[文档](https://expressjs.com/en/api.html#res.render) – GilZ