import { createApp } from 'vue' import App from './App' import router from '../router/index' import { postMessage, promisefiyPostMessage } from '@/helpers/native-message' // 先引入到入口文件 import 'normalize.css' import 'vant/lib/index.css' import '../styles/index.less' import { state } from '@/state' import { browser, setAuth } from '@/helpers/utils' import Vue3Lottie from 'vue3-lottie' import 'vue3-lottie/dist/style.css' import useErrorLog from '../hooks/useErrorLog'; import ResizeObserver from 'resize-observer-polyfill' // 增加判断如果不支持当前依赖再设置即可 if (window.ResizeObserver === undefined) { window.ResizeObserver = ResizeObserver; } const app = createApp(App).use(Vue3Lottie) // 获取token promisefiyPostMessage({ api: 'getToken' }).then((res: any) => { console.log(res, 'res') const content = res.content if (content?.accessToken) { setAuth(content.tokenType + ' ' + content.accessToken) } }) // 设置是否显示导航栏 0 不显示 1 显示 postMessage({ api: 'setBarStatus', content: { status: 0 } }) // 导航栏高度 postMessage({ api: 'getNavHeight' }, (res) => { const { content } = res as any const dpi = content.dpi || 2 if (content.navHeight) { const navHeight = content.navHeight / dpi console.log(navHeight, 'navHeight') state.navBarHeight = navHeight } }) // 获取版本号 postMessage( { api: 'getVersion' }, (res: any) => { state.version = res.content.version } ) // import Vconsole from 'vconsole' // const vconsole = new Vconsole() const paymentType = (window as any).paymentType // 浏览器设置 if (browser().isTeacher || paymentType === 'TEACHER') { state.platformType = 'TEACHER' } else if (browser().isStudent || paymentType === 'STUDENT') { state.platformType = 'STUDENT' } else if (browser().isSchool || paymentType === 'SCHOOL') { state.platformType = 'SCHOOL' } else { state.platformType = 'SCHOOL' } if (state.platformType === 'TEACHER') { state.platformApi = '/api-teacher' } if (state.platformType === 'STUDENT') { state.platformApi = '/api-student' } else { state.platformApi = '/api-school' } app.use(router) // 监听错误信息 const errorLog = useErrorLog(); errorLog.startListenErrorLog(); app.mount('#app')