main.ts 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. import { createApp } from 'vue';
  2. import App from './App';
  3. import router from './router/index';
  4. import dayjs from 'dayjs';
  5. import 'dayjs/locale/zh-cn';
  6. import 'vant/lib/index.css';
  7. import './component-ui/index.less';
  8. import './styles/index.less';
  9. import { promisefiyPostMessage, postMessage } from './helpers/native-message';
  10. import { state } from './state';
  11. import { storage } from '@/helpers/storage';
  12. import { ACCESS_TOKEN } from '@/store/mutation-types';
  13. import { setupStore } from './store';
  14. import { Lazyload, setToastDefaultOptions } from 'vant';
  15. import useErrorLog from './hooks/useErrorLog';
  16. setToastDefaultOptions({ duration: 3000 });
  17. // import 'mobile-drag-drop/default.css';
  18. // import { polyfill } from 'mobile-drag-drop';
  19. // // 可选引入滚动行为的脚本
  20. // import { scrollBehaviourDragImageTranslateOverride } from 'mobile-drag-drop/scroll-behaviour';
  21. // // 可选的配置项
  22. // const options = {
  23. // // 使用这个选项以应用滚动行为
  24. // dragImageTranslateOverride: scrollBehaviourDragImageTranslateOverride
  25. // };
  26. // // 初始化polyfill
  27. // polyfill(options);
  28. // document.addEventListener('dragstart', (event: any) => {
  29. // if (!event.target.classList.contains('draggable')) {
  30. // event.preventDefault();
  31. // }
  32. // });
  33. // 获取token
  34. promisefiyPostMessage({ api: 'getToken' }).then((res: any) => {
  35. const content = res.content;
  36. if (content?.accessToken) {
  37. storage.set(ACCESS_TOKEN, content.tokenType + ' ' + content.accessToken);
  38. }
  39. });
  40. // 导航栏高度
  41. postMessage({ api: 'getNavHeight' }, (res: any) => {
  42. const { content } = res as any;
  43. const dpi = content.dpi || 2;
  44. if (content.navHeight) {
  45. const navHeight = content.navHeight / dpi;
  46. console.log(navHeight, 'navHeight');
  47. state.navBarHeight = navHeight;
  48. }
  49. });
  50. // import Vconsole from 'vconsole';
  51. // const vconsole = new Vconsole();
  52. const app = createApp(App);
  53. app.use(Lazyload);
  54. // store plugin: pinia
  55. setupStore(app);
  56. dayjs.locale('zh-ch');
  57. app.use(router);
  58. // 监听错误信息
  59. const errorLog = useErrorLog();
  60. errorLog.startListenErrorLog();
  61. app.mount('#app');