国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

前端權(quán)限驗(yàn)證之自定義指令v-permission

這篇具有很好參考價(jià)值的文章主要介紹了前端權(quán)限驗(yàn)證之自定義指令v-permission。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

在前端處理按鈕權(quán)限

使用vue自定義指令來(lái)v-permission 來(lái)控制按鈕

詳細(xì)代碼

//index.js文件
import permission from './permission'

const install = function(Vue) {
  Vue.directive('permission', permission)
}

if (window.Vue) {
  window['permission'] = permission
  Vue.use(install); // eslint-disable-line
}

permission.install = install
export default permission
// permission.js文件
import store from '@/store'

function checkPermission(el, binding) {
  const { value } = binding
  const roles = store.getters && store.getters.roles

  if (value && value instanceof Array) {
    if (value.length > 0) {
      const permissionRoles = value

      const hasPermission = roles.some(role => {
        return permissionRoles.includes(role)
      })

      if (!hasPermission) {
        el.parentNode && el.parentNode.removeChild(el)
      }
    }
  } else {
    throw new Error(`need roles! Like v-permission="['admin','editor']"`)
  }
}

export default {
  inserted(el, binding) {
    checkPermission(el, binding)
  },
  update(el, binding) {
    checkPermission(el, binding)
  }
}

在代碼中使用

<template>
  <!-- Admin can see this -->
  <el-tag v-permission="['admin']">admin</el-tag>

  <!-- Editor can see this -->
  <el-tag v-permission="['editor']">editor</el-tag>

  <!-- Editor can see this -->
  <el-tag v-permission="['admin','editor']">Both admin or editor can see this</el-tag>
</template>

<script>
// 當(dāng)然你也可以為了方便使用,將它注冊(cè)到全局
import permission from '@/directive/permission/index.js' // 權(quán)限判斷指令
export default{
  directives: { permission }
}
</script>

可以使用全局權(quán)限判斷函數(shù),用法和指令 v-permission 類似。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-632098.html

<template>
  <el-tab-pane v-if="checkPermission(['admin'])" label="Admin">Admin can see this</el-tab-pane>
  <el-tab-pane v-if="checkPermission(['editor'])" label="Editor">Editor can see this</el-tab-pane>
  <el-tab-pane v-if="checkPermission(['admin','editor'])" label="Admin-OR-Editor">Both admin or editor can see this</el-tab-pane>
</template>

<script>
import checkPermission from '@/utils/permission' // 權(quán)限判斷函數(shù)

export default{
   methods: {
    checkPermission
   }
}
</script>

到了這里,關(guān)于前端權(quán)限驗(yàn)證之自定義指令v-permission的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 前端Vue入門-day05-自定義指令、插槽、路由入門

    前端Vue入門-day05-自定義指令、插槽、路由入門

    (創(chuàng)作不易,感謝有你,你的支持,就是我前行的最大動(dòng)力,如果看完對(duì)你有幫助,請(qǐng)留下您的足跡) 目錄 自定義指令? 基本語(yǔ)法 (全局局部注冊(cè)) 全局注冊(cè)? 局部注冊(cè) 指令的值? v-loading 指令封裝 插槽 默認(rèn)插槽 后備內(nèi)容(默認(rèn)值)? 具名插槽? 作用域插槽? 路由入門 單頁(yè)應(yīng)

    2024年02月13日
    瀏覽(53)
  • 文心一言指令詞寶典之自媒體篇

    對(duì)學(xué)習(xí)資源充滿渴望的大學(xué)生可申請(qǐng)免費(fèi)試讀~ 作者:哈哥撩編程 (視頻號(hào)、抖音、公眾號(hào)同名) 新星計(jì)劃·全棧領(lǐng)域優(yōu)秀創(chuàng)作者 博客專家·全國(guó)博客之星第四名 超級(jí)個(gè)體·COC上海社區(qū)主理人 特約講師·谷歌亞馬遜演講嘉賓 科技博主·極星會(huì)首批簽約作者 ?? 推薦專欄: ??

    2024年04月16日
    瀏覽(34)
  • 【VUE學(xué)習(xí)】權(quán)限管理系統(tǒng)前端vue實(shí)現(xiàn)4-自定義icon實(shí)現(xiàn)

    template 部分:定義了組件的模板內(nèi)容。在這里,使用了 svg 標(biāo)簽來(lái)創(chuàng)建一個(gè) SVG 圖標(biāo)元素,并添加了一個(gè) use 元素來(lái)引用具體的圖標(biāo)。 :xlink:href 屬性使用了綁定語(yǔ)法,將 iconName 綁定為 use 元素的 xlink:href 屬性的值。 script setup 部分:使用了 Vue 3 的 script setup 語(yǔ)法,用于編寫組件

    2024年02月13日
    瀏覽(25)
  • 前端Vue自定義發(fā)送短信驗(yàn)證碼彈框popup 實(shí)現(xiàn)剩余秒數(shù)計(jì)數(shù) 重發(fā)短信驗(yàn)證碼

    前端Vue自定義發(fā)送短信驗(yàn)證碼彈框popup 實(shí)現(xiàn)剩余秒數(shù)計(jì)數(shù) 重發(fā)短信驗(yàn)證碼

    前端Vue自定義發(fā)送短信驗(yàn)證碼彈框popup 實(shí)現(xiàn)剩余秒數(shù)計(jì)數(shù) 重發(fā)短信驗(yàn)證碼, 閱讀全文下載完整代碼請(qǐng)關(guān)注微信公眾號(hào): 前端組件開(kāi)發(fā) 效果圖如下: 實(shí)現(xiàn)代碼如下: 使用方法 HTML代碼實(shí)現(xiàn)部分 組件實(shí)現(xiàn)代碼

    2024年02月11日
    瀏覽(18)
  • 前端開(kāi)發(fā)攻略---Vue通過(guò)自定義指令實(shí)現(xiàn)元素平滑上升的動(dòng)畫效果(可以自定義動(dòng)畫時(shí)間、動(dòng)畫效果、動(dòng)畫速度等等)。

    前端開(kāi)發(fā)攻略---Vue通過(guò)自定義指令實(shí)現(xiàn)元素平滑上升的動(dòng)畫效果(可以自定義動(dòng)畫時(shí)間、動(dòng)畫效果、動(dòng)畫速度等等)。

    這個(gè)指令不是原生自帶的,需要手動(dòng)去書寫,但是這輩子只需要編寫這一次就好了,后邊可以反復(fù)利用。 IntersectionObserver 是一個(gè)用于監(jiān)測(cè)元素是否進(jìn)入或離開(kāi)視口(viewport)的 API。它可以幫助你在頁(yè)面滾動(dòng)時(shí)或者元素位置改變時(shí)進(jìn)行回調(diào)操作,這樣你就可以根據(jù)元素是否可見(jiàn)

    2024年04月11日
    瀏覽(25)
  • SpringMVC之自定義注解

    SpringMVC之自定義注解

    目錄 前言 一、自定義注解 1.Java注解簡(jiǎn)介 2. 注解的用處 3. 為什么要用注解 4.自定義注解的應(yīng)用場(chǎng)景 5. 注解的分類 6.如何定義并使用自定義注解 7.自定義注解三種使用案例 案例一: 案例二: 案例三: 二、Aop自定義注解的應(yīng)用 ? 1 .自定義注解類 2.切面類 3.Controller層 隨著We

    2024年02月07日
    瀏覽(16)
  • 前端Vue自定義驗(yàn)證碼密碼登錄切換tabs選項(xiàng)卡標(biāo)簽欄標(biāo)題欄 驗(yàn)證碼登錄模版 密碼登錄模版

    前端Vue自定義驗(yàn)證碼密碼登錄切換tabs選項(xiàng)卡標(biāo)簽欄標(biāo)題欄 驗(yàn)證碼登錄模版 密碼登錄模版

    前端Vue自定義驗(yàn)證碼密碼登錄切換tabs選項(xiàng)卡標(biāo)簽欄標(biāo)題欄 驗(yàn)證碼登錄模版 密碼登錄模版, 請(qǐng)?jiān)L問(wèn)uni-app插件市場(chǎng)地址:https://ext.dcloud.net.cn/plugin?id=13221 效果圖如下: 實(shí)現(xiàn)代碼如下: 使用方法 HTML代碼實(shí)現(xiàn)部分 組件實(shí)現(xiàn)代碼

    2024年02月11日
    瀏覽(27)
  • react之自定義hooks

    原文合集地址如下,有需要的朋友可以關(guān)注 本文地址 合集地址 任何相對(duì)獨(dú)立、復(fù)用性強(qiáng)的邏輯,都可以 extract 為自定義 Hook,自定義 Hook 是一種復(fù)用 React 的狀態(tài)邏輯的函數(shù)。 自定義 Hook 的主要特點(diǎn)是: 抽象組件間的狀態(tài)邏輯,方便復(fù)用 讓功能組件更純粹,更易于維護(hù) 自定義

    2024年02月12日
    瀏覽(19)
  • SpringBoot之自定義starter

    SpringBoot之自定義starter

    目錄 一、什么是SpringBoot starter機(jī)制 二、為什么要自定義starter 三、什么時(shí)候需要?jiǎng)?chuàng)建自定義starter 四、自動(dòng)加載核心注解說(shuō)明 五、自定義starter的開(kāi)發(fā)流程 案例一:為短信發(fā)送功能創(chuàng)建一個(gè)starter 案例二:AOP方式統(tǒng)一服務(wù)日志 SpringBoot中的starter是一種非常重要的機(jī)制(自動(dòng)化配

    2024年02月01日
    瀏覽(23)
  • Android 之自定義繪制一

    繪制的基本要素 onDraw(Canvas)?繪制方法 Canvas?繪制工具 Paint?調(diào)整風(fēng)格?粗細(xì)等 坐標(biāo)系: x y ,3D?會(huì)有z軸,x? 左到右,y?上至下,與數(shù)學(xué)中y顛倒 尺寸單位:?布局中 dp ,sp ,代碼中 px;dp?為了適配不同的尺寸 繪制的關(guān)鍵: draw(Canvas )......(關(guān)鍵類:Paint) Paint.ANTI_ALIAS_FLAG?抗鋸齒 paint.setFlag 像

    2024年02月11日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包