Vue 自定義指令

2022-08-24 05:54:09 字數 898 閱讀 7170

一、自定指令做選單級別許可權檢查  

前段時間有個需求時做後台許可權判斷,有兩個級別,導航欄和每個頁面的按鈕許可權

導航欄我們直接根據後端介面返回的資料渲染導航欄,但是按鈕級別當時考慮了兩種方案,全域性方法和自定義指令。因為考慮到是按鈕,沒有許可權時可直接移除節點,最終採用自定義指令來做。

自定義指令建立完後,全域性掛載

實際使用:將要比對的引數傳進去

自定義指令鉤子裡即可根據需求移除節點。

二、自定義指令做輸入框唯一性驗證,在裡踩坑了,起初採用公共元件做,但因輸入框失去焦點後,介面檢驗還沒有返回結果,整個表單又因為做了必填驗證,還沒等到唯一性檢查結束,必填驗證又提示該項為必填資訊,所以改為自定義指令。

全域性掛載方式和上述按鈕許可權配置一樣,因為只唯一性驗證,存在新增和編輯,編輯時需要將輸入框的初始化數值傳進來,輸入框失去焦點後,先比對值是否有改變,沒有改變則不呼叫介面去驗證。因為在驗證改值存在後,我們需求是清空輸入框,如果輸入框有初始化值不比對時,將每次呼叫檢查都會提示改值已經存在並清空輸入框會引發bug。

下圖是我的唯一性驗證方法,如果改值已存在,我會先提示然後清空該輸入框

三、格式化資料,根據需求展示2位或者幾位小數

我們預設展示3位小數,可根據不同業務配置

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 拓展...