2016-12-21 23 views
3

通過react-router,您可以使用plainRoute對象或jsx來定義路由。在反應路由器中運行plainRoute對象與JSX

我不明白plainRoute對象的優點,特別是在使用redux的上下文中。在許多redux教程中,包括由redux的作者創建的教程,推薦使用plainRoutes對象而不是JSX,但我沒有看到爲什麼解釋。

JSX看起來更簡潔,並有更多的文檔和示例,所以我想使用它。

回答

2

對於React Router v2/3,<Route>組件實際上並不是組件。如果你看Route.js中的render方法,你會發現它沒有渲染任何東西。相反,<Route>組件用於創建路由對象。當<Router>在呼叫createTransitionManager時首先通過調用createRoutes函數進行安裝時完成。

對象與JSX大多是個人決定。我不會說使用對象來定義路由比使用JSX更好,但是如果您意識到路由只是要轉換爲對象,那麼使用JSX抽象可能會感覺不必要。

在這一天結束時,您應該選擇最適合您的版本。