| | |
| | | // 公用结构组件 |
| | | import Menu from './module/menu/menu'; |
| | | import Header from './components/common/HeadView'; |
| | | import Login from './module/login/login'; |
| | | |
| | | // oa路由映射 |
| | | import OaRouteDom from './routeDom/oaRouteDom'; |
| | |
| | | super(props); |
| | | this.state = { |
| | | context: { |
| | | role: 'oa', |
| | | role: '', |
| | | roleMenuList: [], |
| | | setContext: this.setContext, |
| | | }, |
| | |
| | | ? JSON.parse(window.localStorage.getItem('menusListByRole')) |
| | | : []; |
| | | |
| | | let role = Object.keys(menusListByRole).reduce((p, n) => { |
| | | if ( |
| | | menusListByRole[n].menus |
| | | .reduce((p, n) => { |
| | | if (n.children) { |
| | | return p.concat(n.children); |
| | | } else { |
| | | return p.concat(n); |
| | | } |
| | | }, []) |
| | | .find(({ path }) => path == pathname) |
| | | ) { |
| | | return p.concat(n); |
| | | } else { |
| | | return p; |
| | | } |
| | | }, []); |
| | | let role = Object.keys(menusListByRole) |
| | | .reduce((p, n) => { |
| | | if ( |
| | | menusListByRole[n].menus |
| | | .reduce((p, n) => { |
| | | if (n.children) { |
| | | return p.concat(n.children); |
| | | } else { |
| | | return p.concat(n); |
| | | } |
| | | }, []) |
| | | .find(({ path }) => path == pathname) |
| | | ) { |
| | | return p.concat(n); |
| | | } else { |
| | | return p; |
| | | } |
| | | }, []) |
| | | .join(''); |
| | | console.log('role', role); |
| | | |
| | | this.setState({ |
| | | context: { |
| | |
| | | </Switch> |
| | | <Layout> |
| | | <Content> |
| | | <Route path="/login" component={()=>( <Login setContext={this.setContext}/>)} /> |
| | | {context.role == 'oa' && <OaRouteDom />} |
| | | {context.role == 'user' && <UserRouteDom />} |
| | | </Content> |