最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

react實現(xiàn)菜單權限控制的方法

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 22:23:56
文檔

react實現(xiàn)菜單權限控制的方法

react實現(xiàn)菜單權限控制的方法:通常公司的后臺管理系統(tǒng)都需要權限控制,即不同的角色用戶看到不同的菜單,如下圖: 下面,通過react實現(xiàn)這樣的后臺管理系統(tǒng)(腳手架),功能簡介: 1.頂部的菜單項根據(jù)用戶的角色動態(tài)生成。 2.側邊測菜單項根據(jù)已選的頂部菜單動態(tài)生成。 直接上代碼:
推薦度:
導讀react實現(xiàn)菜單權限控制的方法:通常公司的后臺管理系統(tǒng)都需要權限控制,即不同的角色用戶看到不同的菜單,如下圖: 下面,通過react實現(xiàn)這樣的后臺管理系統(tǒng)(腳手架),功能簡介: 1.頂部的菜單項根據(jù)用戶的角色動態(tài)生成。 2.側邊測菜單項根據(jù)已選的頂部菜單動態(tài)生成。 直接上代碼:

通常公司的后臺管理系統(tǒng)都需要權限控制,即不同的角色用戶看到不同的菜單,如下圖:

下面,通過react實現(xiàn)這樣的后臺管理系統(tǒng)(腳手架),功能簡介:

1.頂部的菜單項根據(jù)用戶的角色動態(tài)生成。

2.側邊測菜單項根據(jù)已選的頂部菜單動態(tài)生成。

直接上代碼:

路由配置:

export default (
 <Route path="/" component={App}>
 <IndexRoute component={EmployeeList}/>
 <Route path="/employee" component={Employee}>
 <IndexRoute component={EmployeeList}/>
 <Route path="/employee/list" component={EmployeeList}/>
 <Route path="/employee/detail/:id" component={EmployeeDetail}/>
 </Route>
 <Route path="/goods" component={Goods}>
 <IndexRoute component={GoodsList}/>
 <Route path="/goods/list" component={GoodsList}/>
 <Route path="/goods/detail/:id" component={GoodsDetail}/>
 </Route>
 </Route>
)

頂部菜單項單獨成了一個組件:

// 動態(tài)數(shù)據(jù)
import React, { Component } from 'react'
import { Link } from 'react-router' // 引入Link處理導航跳轉
import { connect } from 'react-redux'
import { fetchPostsIfNeeded, updateSubMenuWhenClick } from '../actions/count'
import { Menu } from 'antd';
class TopMenu extends Component {
 constructor(props){
 super(props);
 this.handleMenuClick = this.handleMenuClick.bind(this);
 }

 handleMenuClick(e){
 // console.log(e.item.props['data-menukey']);
 const { updateSubMenuWhenClick } = this.props
 updateSubMenuWhenClick(true, e.item.props['data-menukey'])
 }
 componentWillMount() {
 }
 componentDidMount() {
 const { fetchPostsIfNeeded } = this.props
 fetchPostsIfNeeded()
 }
 render() {
 const { menuList, fetchPostsIfNeeded } = this.props
 if(menuList.length != 0) {
 fetchPostsIfNeeded(true, menuList[0].key)
 }

 return (
 <Menu
 theme="dark"
 mode="horizontal"
 defaultSelectedKeys={['0']}
 style={{ lineHeight: '64px' }}
 onClick={this.handleMenuClick}
 >
 {
 menuList.map((e, index) => 
 <Menu.Item key={index} data-menukey={e.key} >
 <Link to={{ pathname: e.url }} >{e.name}</Link>
 </Menu.Item>
 )
 }
 </Menu>
 )
 }
}

const getList = state => {
 return {
 menuList: state.update.menuList
 }
}

export default connect(
 getList, 
 { fetchPostsIfNeeded, updateSubMenuWhenClick }
)(TopMenu)

在render函數(shù)中,如果動態(tài)生成的頂部菜單數(shù)據(jù)長度不為0,則根據(jù)頂部菜單的key動態(tài)生成側邊菜單項。

const { menuList, fetchPostsIfNeeded } = this.props
 if(menuList.length != 0) {
 fetchPostsIfNeeded(true, menuList[0].key)
 }

聲明:本網(wǎng)頁內容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

react實現(xiàn)菜單權限控制的方法

react實現(xiàn)菜單權限控制的方法:通常公司的后臺管理系統(tǒng)都需要權限控制,即不同的角色用戶看到不同的菜單,如下圖: 下面,通過react實現(xiàn)這樣的后臺管理系統(tǒng)(腳手架),功能簡介: 1.頂部的菜單項根據(jù)用戶的角色動態(tài)生成。 2.側邊測菜單項根據(jù)已選的頂部菜單動態(tài)生成。 直接上代碼:
推薦度:
標簽: 菜單 權限 管理
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top