2024年05月16日 建站教程
利用hasPermission
统一的权限判断方法进行按钮判断是否显示!
<template> <a-button v-if="hasPermission(['20000', '20001', '20003'])"> code拥有[20000,20001,20003]可见 </a-button> </template> <script lang="ts"> import { usePermission } from '/@/hooks/usePermission'; export default defineComponent({ setup() { const { hasPermission } = usePermission(); return { hasPermission }; }, }); </script>
export function usePermission() { function hasPermission(value, def = true) { // 默认视为有权限 if (!value) { return def; } const allCodeList = permissionStore.getPermCodeList; if (!isArray(value)) { return allCodeList.includes(value); } // intersection是lodash提供的一个方法,用于返回一个所有给定数组都存在的元素组成的数组 return (intersection(value, allCodeList)).length > 0; return true; } }
本文链接:http://so.lmcjl.com/news/4642/