2017-08-15 64 views
2

我正在用React構建一個網站,並使用React-Router,當用戶訪問一個不存在的URL時,我想渲染一個404頁面。如何在React-React-React中正確呈現404頁面?

某些URL是動態的,也就是說,

www.site.com/user/(username) 

如何渲染反應路由器404頁,如果與一個特定的用戶名犯規的用戶存在嗎?在API調用期間,我是否必須手動在組件本身編寫代碼來檢查用戶是否存在,然後將用戶重定向到404組件?

我正在尋找將用戶重定向到未找到頁面的最佳方法。尋找如何做到最好的想法。

+1

不幸的是,唯一的方法是在組件中匹配'user /(username)'的條件。然後,讓組件呈現錯誤,或者您可以使用''重定向到錯誤頁面,如@canaan seaton所述 – Purgatory

回答

1

您可以查看是否存在this.props.match.username。如果確實如此,則渲染正常,如果不正確,則使用React-Router Redirect組件重定向到404組件。如果您有多個需要此功能的路徑,那麼您可以考慮爲此設置一個HOC