vue通過自定義指令控制不同角色頁面顯示什麼按鈕

2021-10-22 18:57:47 字數 1426 閱讀 8306

main.js中引入import 『./plugins/button-check.js』

button-check.js』

import vue from "vue"

// 在開發中,buttonlist的相關資料都是後端給的

// 這裡為了省事,直接寫成了我所需要的資料格式,

// 你們需要根據後端返回的資料進行提取或直接使用,

// 使用了name標識,但建議用btn-code作為唯一標識,像id一樣.

const buttonlist =[,

// permission控制展示隱藏

]//如果後端返回的可以存在混村,取出來sessionstorage.getitem

/** * 判斷按鈕是否有權顯示

* @param name

* @returns

*/function isbuttomshow

(buttonlist, name)

// 按鈕存在且為true,則顯示

vue.

directive

('button-check',}

})

使用

<

template

>

<

!-- 麵包屑導航區 --

>

class

="el-icon-arrow-right"

>

"">首頁<

/el-breadcrumb-item>

資料統計<

/el-breadcrumb-item>

資料包表<

/el-breadcrumb-item>

<

/el-breadcrumb>

<

!-- 卡片檢視 --

>

for=

"(btn,idx) in btns"

:key=

"idx"

class

="btn"

>

<

!-- 傳入了btn.name,將會在button-check中通過指令引數value獲取到 --

>

"btn.name"

:class

="btn.classname"

>

}<

/el-button>

<

/div>

<

/el-card>

<

/div>

<

/template

>

export

default,,

]}}}

<

/script>

"less" scoped>

<

/style>

Vue自定義指令

vue有很多內建的指令,比如說v on,v model,v clock等等,每乙個指令會完成一定的功能,但是這些內建的指令總會有些侷限性,要是能夠自定義指令就好了 vue的自定義指令分類 全域性指令和區域性指令 vue指令的定義和用法 以全域性指令為例 1.語法 vue.directive 指令id...

vue自定義指令

自定義指令主要有兩種方式。一是在元件裡以directives的選項來自定義指令的內容。這樣的自定義指令是區域性的自定義指令,只在當前的元件裡面才能使用。script export default directives arr arr.join el.style.csstext arr script ...

VUE 自定義指令

dom插入便獲取焦點 vue.directive focus 根據指令的值決定自否獲取焦點 vue.directive focus 注 被拖拽的元素必須有定位樣式 vue.directive drag function el,binding document.nm useup function 拓展...