index.vue 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <template>
  2. <div id="index">
  3. <el-row>
  4. <el-col :span="24" class="main">
  5. <el-col :span="24" class="main animate__animated animate__backInRight">
  6. <home1 v-if="user.role_type == '0' || user.role_type == '1'"></home1>
  7. <home2 v-else-if="user.role_type == '2'" :is_role="is_role"></home2>
  8. <home3 v-else-if="user.role_type == '3'" :is_role="is_role"></home3>
  9. </el-col>
  10. </el-col>
  11. </el-row>
  12. </div>
  13. </template>
  14. <script setup lang="ts">
  15. import type { Ref } from 'vue';
  16. import store from '@/stores/counter';
  17. import { ref, onMounted } from 'vue';
  18. import home1 from './parts/home-1.vue';
  19. import home2 from './parts/home-2.vue';
  20. import home3 from './parts/home-3.vue';
  21. let user: Ref<{ _id: string; name: string; unit_name: string; nick_name: string; role_type: string }> = ref({
  22. _id: '',
  23. name: '',
  24. unit_name: '',
  25. nick_name: '',
  26. role_type: '',
  27. });
  28. let is_role: Ref<boolean> = ref(true);
  29. onMounted(async () => {
  30. user.value = store.state.user as { _id: string; name: string; unit_name: string; nick_name: string; role_type: string };
  31. await searchRole();
  32. });
  33. // 查询
  34. const searchRole = async () => {
  35. let role = localStorage.getItem('is_role');
  36. if (role) is_role.value = JSON.parse(role);
  37. };
  38. </script>
  39. <style scoped></style>