我想爲某個頁面創建一個'before'鉤子,以查看用戶是否先登錄並且如果不呈現/重定向到登錄頁面...現在,我應該使用重定向還是呈現爲了這?Iron-Router,重定向和渲染有什麼區別?
我知道這個問題可能是一個更普遍的問題,但我想這將有助於瞭解之間的差異兩個和何時使用它們..
我想爲某個頁面創建一個'before'鉤子,以查看用戶是否先登錄並且如果不呈現/重定向到登錄頁面...現在,我應該使用重定向還是呈現爲了這?Iron-Router,重定向和渲染有什麼區別?
我知道這個問題可能是一個更普遍的問題,但我想這將有助於瞭解之間的差異兩個和何時使用它們..
的基本區別是,render
只會渲染傳遞在模板中爲用戶在調用前掛鉤時降落的任何路線,並且redirect
將更改路線並呈現與新路線相關聯的模板。
你可以使用...只是取決於你想完成什麼。有時候,您可能希望允許用戶從任何頁面登錄,然後保留在該頁面上......因此,您可以使用render
。其他時候,您希望將它們發送到登錄路線,然後在成功登錄後將它們引導至特定路線......在這種情況下,您將執行redirect
。
清澈如泥?
那麼'Router.go'和'Router.redirect'有什麼區別? – evolross
不確定是否有'Router.redirect'方法。 RouteController對象上有一個'redirect'方法。這代表了'Router.go'方法。從第331行開始... https://github.com/iron-meteor/iron-router/blob/devel/lib/route_controller_client.js – fletch
指南說有一個'Router.redirect()' - http:/ /iron-meteor.github.io/iron-router/#using-redirects – evolross
示例代碼如何實現此目標可以在這裏找到: http://stackoverflow.com/questions/18452266/ironrouter-authorisation-controller/18506691#18506691 –
「render」和「go」之間的區別被描述更多而不是在IronRouter [文檔](https://github.com/EventedMind/iron-router/blob/master/DOCS.md) –