permission.js 612 B

123456789101112131415161718192021222324
  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 accessApis = store.getters && store.getters.access_api
  10. const permissionApi = value
  11. const hasPermission = accessApis.some(api => {
  12. return permissionApi.includes(api)
  13. })
  14. if (!hasPermission) {
  15. return false
  16. }
  17. return true
  18. } else {
  19. console.error(`need roles! Like v-permission="['admin','editor']"`)
  20. return false
  21. }
  22. }