| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <template>
- <view class="chat-root">
- <view v-if="booting" class="chat-boot">
- <view class="chat-boot__spinner" />
- <text class="chat-boot__text">加载中...</text>
- </view>
- <EnterpriseHome v-else ref="enterpriseHome" :active="true" />
- </view>
- </template>
- <script>
- import EnterpriseHome from '@/packageA/components/home/EnterpriseHome.vue'
- import store from '@/common/store.js'
- import { getToken } from '@/utils/request.js'
- export default {
- components: { EnterpriseHome },
- data() {
- return {
- booting: true
- }
- },
- onLoad() {
- this.bootstrap()
- },
- onShareAppMessage() {
- const home = this.$refs.enterpriseHome
- if (home && typeof home.getShareAppMessage === 'function') {
- return home.getShareAppMessage()
- }
- return {
- title: '用工邀请',
- path: '/pages/worker/job-offer?scene=',
- imageUrl: '/static/images/job.jpg'
- }
- },
- methods: {
- bootstrap() {
- if (!getToken()) {
- uni.reLaunch({ url: '/packageA/auth/login' })
- return
- }
- const s = store.getState()
- if (s.role === 'worker') {
- uni.reLaunch({ url: '/packageA/home/index' })
- return
- }
- this.booting = false
- }
- }
- }
- </script>
- <style lang="scss" scoped>
- .chat-root {
- width: 100%;
- height: 100vh;
- overflow: hidden;
- background: $fe-bg;
- }
- .chat-boot {
- height: 100%;
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- gap: 24rpx;
- background: $fe-surface;
- }
- .chat-boot__spinner {
- width: 56rpx;
- height: 56rpx;
- border: 4rpx solid $fe-gray-200;
- border-top-color: $fe-primary;
- border-radius: 50%;
- animation: chat-spin 0.8s linear infinite;
- }
- .chat-boot__text {
- font-size: 28rpx;
- color: $fe-gray-500;
- }
- @keyframes chat-spin {
- to {
- transform: rotate(360deg);
- }
- }
- </style>
|