selectedPersonRole.vue 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <template>
  2. <div class="register-box" :style="{'background-image': 'url(' + webContent.loginBgUrl + ')'}">
  3. <navBar v-if="!isMobile" :showLoginBtn="false" class="navBar"></navBar>
  4. <div class="register-content">
  5. <h2 style="color: #666; font-weight: 400;">请选择当前角色</h2>
  6. <div class="d-flex mt-16">
  7. <div style="width: 50%;" class="cursor-pointer item d-flex flex-column justify-center align-center" @click="handleClickRole(0)">
  8. <v-icon color="primary" size="100">mdi-account-circle-outline</v-icon>
  9. <span class="color-primary" style="font-size: 24px">普通用户</span>
  10. </div>
  11. <div style="width: 50%; border-left: 1px solid #ccc;" class="cursor-pointer item d-flex flex-column justify-center align-center" @click="handleClickRole(1)">
  12. <v-icon color="primary" size="100">mdi-account-school-outline</v-icon>
  13. <span class="color-primary" style="font-size: 24px">学生用户</span>
  14. </div>
  15. </div>
  16. </div>
  17. </div>
  18. </template>
  19. <script setup>
  20. import navBar from '@/layout/personal/navBar.vue'
  21. defineOptions({ name: 'register-selectedPersonRole'})
  22. // import { useRouter } from 'vue-router'; const router = useRouter()
  23. import { ref, onMounted, nextTick } from 'vue'
  24. import { webContentStore } from '@/store/webContent'
  25. const webContent = webContentStore()
  26. const isMobile = ref(false)
  27. onMounted(async () => {
  28. await webContent.getSystemWebContent()
  29. const userAgent = navigator.userAgent
  30. isMobile.value = /(phone|pad|pod|iPhone|iPod|ios|iPad|Android|Mobile|BlackBerry|IEMobile|MQQBrowser|JUC|Fennec|wOSBrowser|BrowserNG|WebOS|Symbian|Windows Phone)/i.test(userAgent)
  31. })
  32. const handleClickRole = (type) => {
  33. // localStorage.removeItem('chooseRole')
  34. if (type) {
  35. // 学生用户
  36. localStorage.setItem('chooseRole', 'student') // 校验是否完善人才必填信息
  37. } else {
  38. // 普通用户
  39. localStorage.removeItem('chooseRole')
  40. }
  41. nextTick(() => {
  42. window.location.href = '/recruitHome'
  43. })
  44. }
  45. </script>
  46. <style scoped lang="scss">
  47. .register-box {
  48. position: relative;
  49. width: 100%;
  50. height: 100%;
  51. background-size: cover;
  52. }
  53. .register-content {
  54. position: absolute;
  55. top: 50%;
  56. left: 50%;
  57. translate: -50% -50%;
  58. width: 660px;
  59. height: 453px;
  60. background-color: #fff;
  61. border-radius: 8px;
  62. text-align: center;
  63. padding: 90px 62px;
  64. }
  65. .item:hover {
  66. span {
  67. border-bottom: 1px solid #00897B;
  68. }
  69. }
  70. .navBar {
  71. position: absolute;
  72. top: 0;
  73. }
  74. </style>