Files
dvcp_v2_webapp/ui/lib/js/directives.js

41 lines
873 B
JavaScript
Raw Normal View History

2024-01-22 17:12:32 +08:00
import {directive as viewer} from '../cdn/v-viewer/1.7.4/v-viewer'
const map = {
throttle: {
bind: function (el, obj) {
let timerId = null
let flag = true
el.addEventListener('input', function () {
if (!flag) return
flag = false
timerId && clearTimeout(timerId)
timerId = setTimeout(function () {
flag = true
obj.value()
}, 800)
})
}
2023-03-22 15:56:10 +08:00
},
permit: {
bind(el, binding) {
const code = binding.value
const permits = JSON.parse(localStorage.getItem('vuex') || null)?.user?.info?.buttons || []
if (!permits.find(e => e.id == code || e.permission == code)) {
2023-03-27 11:20:37 +08:00
el.style.display = 'none'
2023-03-22 15:56:10 +08:00
}
}
2024-01-22 17:12:32 +08:00
},
2024-02-28 15:13:46 +08:00
viewer: viewer({debug: false})
}
export default {
install(Vue) {
for (const key in map) {
Vue.directive(key, map[key])
}
}
}