做爰高潮a片〈毛片〉,尤物av天堂一区二区在线观看,一本久久A久久精品VR综合,添女人荫蒂全部过程av

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題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關(guān)鍵字專題關(guān)鍵字專題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
當(dāng)前位置: 首頁 - 科技 - 知識百科 - 正文

React-Router如何進(jìn)行頁面權(quán)限管理的方法

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:24:10
文檔

React-Router如何進(jìn)行頁面權(quán)限管理的方法

React-Router如何進(jìn)行頁面權(quán)限管理的方法:前言 在一個(gè)復(fù)雜的SAP應(yīng)用中,我們可能需要根據(jù)用戶的角色控制用戶進(jìn)行頁面的權(quán)限,甚至在用戶進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限的控制。本文就此一權(quán)限控制進(jìn)行討論。本文假設(shè)讀者了解React和React-Router的相關(guān)使用。 從傳統(tǒng)的Router開始 一個(gè)傳統(tǒng)的路由大概長下邊這
推薦度:
導(dǎo)讀React-Router如何進(jìn)行頁面權(quán)限管理的方法:前言 在一個(gè)復(fù)雜的SAP應(yīng)用中,我們可能需要根據(jù)用戶的角色控制用戶進(jìn)行頁面的權(quán)限,甚至在用戶進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限的控制。本文就此一權(quán)限控制進(jìn)行討論。本文假設(shè)讀者了解React和React-Router的相關(guān)使用。 從傳統(tǒng)的Router開始 一個(gè)傳統(tǒng)的路由大概長下邊這

前言

在一個(gè)復(fù)雜的SAP應(yīng)用中,我們可能需要根據(jù)用戶的角色控制用戶進(jìn)行頁面的權(quán)限,甚至在用戶進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限的控制。本文就此一權(quán)限控制進(jìn)行討論。本文假設(shè)讀者了解React和React-Router的相關(guān)使用。

從傳統(tǒng)的Router開始

一個(gè)傳統(tǒng)的路由大概長下邊這個(gè)樣式,這是沒有添加任何權(quán)限限制的。

export default (store) => {
 const history = syncHistoryWithStore(hashHistory, store);
 return (
 <Router history={history}>
 <Route path="/" component={AppRoot} >
 <IndexRoute component={IndexPage} />
 <Route path="photo" component={PhotoPage} />
 <Route path="info" component={InfoPage} />
 </Route>
 {/* <Redirect path="*" to="/error" /> */}
 </Router>
 )
}

這里一共有3個(gè)頁面 IndexPage, PhotoPage,InfoPage。

添加第一個(gè)權(quán)限

假設(shè)我們需要在用戶進(jìn)入PhotoPage之前需要驗(yàn)證用戶是否有權(quán)限,根據(jù)store的的一個(gè)狀態(tài)去判斷。

先添加如下一個(gè)函數(shù)

const authRequired = (nextState, replace) => {
 // Now you can access the store object here.
 const state = store.getState(); 
 if (state.admin != 1) {
 replace('/');
 }
 };

函數(shù)里我們判斷了state的admin是否等于1,否則跳轉(zhuǎn)到首頁。

然后在Route添加 onEnter={authRequired} 屬性

<Route path="photo" component={PhotoPage} onEnter={authRequired} />

通過以上,就完成了第一個(gè)權(quán)限的添加

進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限控制

如果需要在進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限控制,那么就需要改變一下策略。

比如上邊的例子,加入state的admin并未加載,那么就需要在上一層的route進(jìn)行數(shù)據(jù)加載

首先添加一個(gè)加載數(shù)據(jù)的函數(shù)

function loadData(nextState, replace, callback) {
 let unsubscribe;
 function onStateChanged() {
 const state = store.getState();
 if (state.admin) {
 unsubscribe();
 callback();
 }
 }
 unsubscribe = store.subscribe(onStateChanged);
 store.dispatch(actions.queryAdmin());
 }

接著再修改一下Router

<Router history={history}>
 <Route path="/" component={AppRoot} onEnter={loadData}>
 <IndexRoute component={IndexPage} />
 <Route path="photo" component={PhotoPage} onEnter={authRequired} />
 <Route path="info" component={InfoPage} />
 </Route> 
 </Router>

這樣在進(jìn)入下邊之前,就會(huì)先進(jìn)行數(shù)據(jù)加載。

通過以上簡單幾步,一個(gè)完整的權(quán)限控制鏈就完成了.

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

文檔

React-Router如何進(jìn)行頁面權(quán)限管理的方法

React-Router如何進(jìn)行頁面權(quán)限管理的方法:前言 在一個(gè)復(fù)雜的SAP應(yīng)用中,我們可能需要根據(jù)用戶的角色控制用戶進(jìn)行頁面的權(quán)限,甚至在用戶進(jìn)入系統(tǒng)之前就進(jìn)行權(quán)限的控制。本文就此一權(quán)限控制進(jìn)行討論。本文假設(shè)讀者了解React和React-Router的相關(guān)使用。 從傳統(tǒng)的Router開始 一個(gè)傳統(tǒng)的路由大概長下邊這
推薦度:
標(biāo)簽: 方法 如何 權(quán)限
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 噶尔县| 萨迦县| 望城县| 洪洞县| 阜南县| 石嘴山市| 瓮安县| 梅河口市| 绿春县| 瑞安市| 岳阳县| 黄大仙区| 平泉县| 宿松县| 韶山市| 芒康县| 滦南县| 瓦房店市| 池州市| 安丘市| 衡南县| 通化市| 兰溪市| 仙居县| 绩溪县| 新宾| 青龙| 五寨县| 阿勒泰市| 吉木萨尔县| 甘孜县| 璧山县| 定陶县| 界首市| 广南县| 河池市| 梁山县| 奉化市| 怀安县| 贺兰县| 广元市|