permission.js 554 B

123456789101112131415161718192021
  1. import store from '@/store'
  2. /**
  3. * @param {Array} value
  4. * @returns {Boolean}
  5. * @example see @/views/permission/directive.vue
  6. */
  7. export default function checkPermission(value) {
  8. if (value && value instanceof Array && value.length > 0) {
  9. const btns = store.getters && store.getters.btns
  10. const permissionBtns = value
  11. const hasPermission = btns.some(btn => {
  12. return permissionBtns.includes(btn)
  13. })
  14. return hasPermission
  15. } else {
  16. console.error(`need roles! Like v-permission="['admin','editor']"`)
  17. return false
  18. }
  19. }