ant-design 怎么根据用户登陆角色 动态改变路由

根据用户级别判断指向不同的路由还是不太懂,服务器登陆的时候,返回了一个字段isGridLevel=yes ,请教大神怎么判断用户等级,然后登陆进来的时候,指向不同路由。

clipboard.png

是在menujs里判断吗??

阅读 4.6k
2 个回答

一般的做法是登录后,根据服务端返回的数据判断路由跳转。
如果使用dva框架的话,可以直接放到model中。根据数据执行routeRedux.push(...)跳转路由。

这仅仅是前端的做法,依然不够安全。
最好的做法是,后端直接把菜单和路由给返回回来,前端默认认为后台给的数据都是有权限的。这样前端不再做权限判断。即简单又安全。

import {BrowserRouter} from 'react-router-dom';
const pathTo = ()=>{
    function myComponent (path,com){
        <Route path = {pathTo} component = {com}>
    }
    switch (isGridLevel){
        case:'yes':
            return myComponent ('/undispatchenbikes',com1);
        case 'no':
            return myComponent ('/dispatchenbikes',com2);
        default:
            return myComponent ('/repiringBikes',com3);    
    }
}
<BrowserRouter>
    pathTo()
</BrowserRouter>

具体情况根据你的业务场景来

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题