useCameraPermissionTree.ts 686 B

123456789101112131415161718192021222324
  1. import { shallowRef, onMounted } from 'vue';
  2. import { getFullCameraTree } from "@/api/camera/camera-preview";
  3. import { PermissionViewTree } from "@/types/permission/type";
  4. import { transformToViewTree } from '../utils/tree';
  5. export default function useCameraPermissionTree() {
  6. const cameraPermTreeData = shallowRef<PermissionViewTree>([]);
  7. /**
  8. * 生成权限树
  9. */
  10. const buildPermissionTree = async () => {
  11. try {
  12. const result = await getFullCameraTree();
  13. cameraPermTreeData.value = transformToViewTree(result, 'name', 'id');
  14. } catch (e) {
  15. console.error(e);
  16. }
  17. };
  18. onMounted(() => buildPermissionTree());
  19. return { cameraPermTreeData };
  20. }