2016-01-12 56 views

回答

1

我認爲他們是相同的傳遞變量渲染模板,但有一個區別。 您可以使用res.locals從服務中間件傳遞變量。

res.locals

包含作用域到 請求響應局部變量,並因此僅提供給在該 請求/響應循環呈現的視圖(一個或多個)的對象(如果有的話) 。否則,該屬性是 與app.locals相同。

此屬性對於公開請求級別信息(如 請求路徑名稱,經過驗證的用戶,用戶設置等)非常有用。

app.use(function(req, res, next){ 
    res.locals.user = req.user; 
    res.locals.authenticated = ! req.user.anonymous; 
    next(); 
}); 

從這個代碼,您傳遞req.user下一個中間件。

+0

所以最好使用res.locals?因爲它更靈活? – Jennifer

+1

我想如果你想渲染模板,我認爲'res.render('index',{people:people});'是一個更好的方法。 – BlackMamba

相關問題