我正在爲我的反應應用和react-router 3.0.0版本的路由使用create-react-app樣板。使用react-router v3在create-react-app中分割代碼
我想在需要時加載組件,即基本上是代碼分割。
我被卡住了,因爲我不知道如何做代碼拆分,因爲我有一個HOC檢查用戶角色,如果用戶沒有特定路線的角色,比我重定向用戶到一些'未經授權的路線。
我也有onEnter函數,它需要在加載任何組件之前調用,它會檢查用戶令牌是否過期,如果令牌過期,我將用戶重定向到登錄頁面。
所以如果有人可以幫我在這種情況下代碼分割。
下面是我Route.js文件
<Route path="/" component={App}>
<IndexRoute onEnter={this.handleLoginRedirect} component={Login} />
<Route path="/" component={Layout} onEnter={this.handleRouteEnter} onChange={this.handleRouteChange}>
<Route path="admin" component={Authorization(Admin, Constant.AdminAuthorizeRoles, '/unauthorised')}>
<Route path=":mode/:id" component={Admin}>
<Route exact path=":subMode" component={Admin}/>
</Route>
</Route>
<Route path="admin-summary" component={Authorization(AdminOrderSummary, Constant.AdminAuthorizeRoles, '/unauthorised')}/>
<Route path="user-profile" component={Authorization(Profile, Constant.userProfileAuthorizeRole, '/unauthorised')}/>
<Route path="new-user" component={Authorization(NewUser, Constant.createNewUserProfileAuthorizeRole, '/unauthorised')}/>
<Route path="/unauthorised" component={UnAuthorisation}/>
</Route>
<Route path="/logout" component={Logout}/>
</Route>
是有你使用的一個原因路由器v3不是v4?你的創作反應應用版本是什麼? – mradziwon
我一直在開發這個項目,它很難從v3移到v4。我的create-react-app版本是1.0.2 – gaurav
您是否嘗試通過動態導入功能分割代碼? – mradziwon