未验证 提交 4e7665c0 编写于 作者: 花裤衩 提交者: GitHub

fix[v-permission]: support dynamic set roles (#3251)

上级 a87218e2
import store from '@/store' import store from '@/store'
export default { function checkPermission(el, binding) {
inserted(el, binding, vnode) { const { value } = binding
const { value } = binding const roles = store.getters && store.getters.roles
const roles = store.getters && store.getters.roles
if (value && value instanceof Array && value.length > 0) { if (value && value instanceof Array) {
if (value.length > 0) {
const permissionRoles = value const permissionRoles = value
const hasPermission = roles.some(role => { const hasPermission = roles.some(role => {
...@@ -15,8 +15,17 @@ export default { ...@@ -15,8 +15,17 @@ export default {
if (!hasPermission) { if (!hasPermission) {
el.parentNode && el.parentNode.removeChild(el) el.parentNode && el.parentNode.removeChild(el)
} }
} else {
throw new Error(`need roles! Like v-permission="['admin','editor']"`)
} }
} 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)
} }
} }
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册