合并 vue与cloud vue3 前端项目
This commit is contained in:
		
							
								
								
									
										28
									
								
								src/directive/permission/hasPermi.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/directive/permission/hasPermi.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
|  /** | ||||
|  * v-hasPermi 操作权限处理 | ||||
|  * Copyright (c) 2019 ruoyi | ||||
|  */ | ||||
|   | ||||
| import useUserStore from '@/store/modules/user' | ||||
|  | ||||
| export default { | ||||
|   mounted(el, binding, vnode) { | ||||
|     const { value } = binding | ||||
|     const all_permission = "*:*:*"; | ||||
|     const permissions = useUserStore().permissions | ||||
|  | ||||
|     if (value && value instanceof Array && value.length > 0) { | ||||
|       const permissionFlag = value | ||||
|  | ||||
|       const hasPermissions = permissions.some(permission => { | ||||
|         return all_permission === permission || permissionFlag.includes(permission) | ||||
|       }) | ||||
|  | ||||
|       if (!hasPermissions) { | ||||
|         el.parentNode && el.parentNode.removeChild(el) | ||||
|       } | ||||
|     } else { | ||||
|       throw new Error(`请设置操作权限标签值`) | ||||
|     } | ||||
|   } | ||||
| } | ||||
							
								
								
									
										28
									
								
								src/directive/permission/hasRole.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								src/directive/permission/hasRole.js
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,28 @@ | ||||
|  /** | ||||
|  * v-hasRole 角色权限处理 | ||||
|  * Copyright (c) 2019 ruoyi | ||||
|  */ | ||||
|   | ||||
| import useUserStore from '@/store/modules/user' | ||||
|  | ||||
| export default { | ||||
|   mounted(el, binding, vnode) { | ||||
|     const { value } = binding | ||||
|     const super_admin = "admin"; | ||||
|     const roles = useUserStore().roles | ||||
|  | ||||
|     if (value && value instanceof Array && value.length > 0) { | ||||
|       const roleFlag = value | ||||
|  | ||||
|       const hasRole = roles.some(role => { | ||||
|         return super_admin === role || roleFlag.includes(role) | ||||
|       }) | ||||
|  | ||||
|       if (!hasRole) { | ||||
|         el.parentNode && el.parentNode.removeChild(el) | ||||
|       } | ||||
|     } else { | ||||
|       throw new Error(`请设置角色权限标签值`) | ||||
|     } | ||||
|   } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 疯狂的狮子li
					疯狂的狮子li