Javascript 如何在reactjs中创建多个路由组件
我希望有不同的仪表盘,不同的用户有不同的链接和路由。我尝试在reactjs中编写更改路由的代码,但这不起作用 我为创建routerbrowser编写了以下代码:Javascript 如何在reactjs中创建多个路由组件,javascript,reactjs,react-router,react-router-dom,Javascript,Reactjs,React Router,React Router Dom,我希望有不同的仪表盘,不同的用户有不同的链接和路由。我尝试在reactjs中编写更改路由的代码,但这不起作用 我为创建routerbrowser编写了以下代码: 导出默认类应用程序扩展组件{ 陈述={ 用户类型:“std”, } showLink(){ 开关(this.state.usertype){ 案例“tcr”: 返回( ); 打破 案例“std”: 返回( ) 打破 违约: 返回( ) 打破 } } render(){ 返回( {this.showLink} ) } } si
导出默认类应用程序扩展组件{
陈述={
用户类型:“std”,
}
showLink(){
开关(this.state.usertype){
案例“tcr”:
返回(
);
打破
案例“std”:
返回(
)
打破
违约:
返回(
)
打破
}
}
render(){
返回(
{this.showLink}
)
}
}
sidenav和链接的代码:
导出默认类Sidenav扩展组件{
侧链(){
开关(this.props.usertype){
案例“tcr”:
返回(
主页
- 搜索
- 消息
);
打破
案例“std”:
返回(
主页
学生们
- 消息
)
打破
}
}
render(){
返回(
{this.sideLink}
);
}
}
我想为每个用户创建空间组件,并将其用于Sidenav。
我如何解决这个问题
请帮帮我
谢谢。只需为每个路由添加一个用户类型道具,并创建一个ProtectedRoute组件 1=教师 2=学生
<Switch>
<Route path="/" exact>
<MainPage container={this.state.container}/>
</Route>
<ProtectedRoute path="/students" userType={1} layout={teacherSideNav} >
<Student container={this.state.container}/>
</ProtectedRoute>
<ProtectedRoute path="/payam" userType={1} layout={teacherSideNav} >
<MessageT container={this.state.container}/>
</ProtectedRoute>
<Route path="/payamha" userType={2} layout={studentSideNav} >
<MessageS container={this.state.container}/>
</Route>
</Switch>
然后在ProtectedRoute组件中应用一个逻辑“这不起作用”——请更具体一些。什么不起作用?你想看到但不想看到的行为是什么?