詳解VUE前端按鈕權(quán)限控制
在用戶登陸后,根據(jù)用戶id讀取用戶的所有權(quán)限數(shù)據(jù),放入本地的storage進行存儲,之后,定義指令,如果用戶含有此按鈕權(quán)限,則在頁面顯示出來:
/**權(quán)限指令**/
Vue.directive('has', {
bind: function(el, binding) {
if (!Vue.prototype.$_has(binding.value)) {
el.parentNode.removeChild(el);
}
}
});
//權(quán)限檢查方法
Vue.prototype.$_has = function(value) {
debugger
let isExist=false;
let buttonpermsStr=sessionStorage.getItem("buttenpremissions");
if(buttonpermsStr==undefined || buttonpermsStr==null){
return false;
}
let buttonperms=JSON.parse(buttonpermsStr);
for(let i=0;i<buttonperms.length;i++){
if(buttonperms[i].perms.indexOf(value)>-1){
isExist=true;
break;
}
}
return isExist;
};
頁面上使用方式:
<el-button type="primary" class="btns first" @click="querylist" v-has="'sys_user_list'">查詢</el-button>
<el-button class="btns" @click="showAddView" v-has="'sys_user_save'">新增</el-button>
<el-button class="btns" @click="modifyUserItem" v-has="'sys_user_update'">修改</el-button>
<el-button class="btns" @click="delItem" v-has="'sys_user_delete'">刪除</el-button>
以上所述是小編給大家介紹的VUE前端按鈕權(quán)限控制詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
element-ui如何取消el-table的hover狀態(tài)(取消高亮顯示)
在一個項目中需要對element-ui的table組件進行一些樣式的修改,其中就包括對hover效果的處理,下面這篇文章主要給大家介紹了關(guān)于element-ui如何取消el-table的hover狀態(tài)(取消高亮顯示)的相關(guān)資料,需要的朋友可以參考下2022-11-11
Nuxt3項目搭建過程(Nuxt3+element-plus+scss詳細步驟)
這篇文章主要介紹了Nuxt3項目搭建(Nuxt3+element-plus+scss詳細步驟),本次記錄一次使用Nuxt3搭建前端項目的過程,內(nèi)容包含Nuxt3的安裝,基于Vite腳手架(默認)構(gòu)建的vue3項目,element-plus的安裝配置,scss的安裝,目錄結(jié)構(gòu)的創(chuàng)建和解釋,需要的朋友可以參考下2022-12-12
vant組件中 dialog的確認按鈕的回調(diào)事件操作
這篇文章主要介紹了vant組件中 dialog的確認按鈕的回調(diào)事件操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11
vue如何解決sass-loader的版本過高導(dǎo)致的編譯錯誤
這篇文章主要介紹了vue如何解決sass-loader的版本過高導(dǎo)致的編譯錯誤問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-06-06
在vue項目中(本地)使用iconfont字體圖標的三種方式總結(jié)
這篇文章主要介紹了在vue項目中(本地)使用iconfont字體圖標的三種方式總結(jié),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09

