天波h5前端应用
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

136 lines
2.4KB

  1. /*
  2. * @Date: 2022-01-19 10:08:26
  3. * @LastEditors: JinxChen
  4. * @LastEditTime: 2023-05-10 09:15:16
  5. * @FilePath: \TelpoH5FrontendWeb\src\main.js
  6. * @description:
  7. */
  8. import Vue from "vue";
  9. import 'amfe-flexible/index.js';
  10. import App from "./App.vue";
  11. import router from "./router";
  12. import store from "./store";
  13. import '@/assets/css/reset.scss';
  14. import dayjs from 'dayjs';
  15. // ui库按需引入
  16. import 'vant/lib/index.css';
  17. import { BaiduStatisticsModel } from '@/config/models';
  18. import {
  19. Button,
  20. Calendar,
  21. Cell,
  22. CellGroup,
  23. Checkbox,
  24. CheckboxGroup,
  25. Col,
  26. DatetimePicker,
  27. Dialog,
  28. Divider,
  29. Empty,
  30. Field,
  31. Form,
  32. Icon,
  33. Image,
  34. Lazyload,
  35. List,
  36. Loading,
  37. NavBar,
  38. NoticeBar,
  39. Notify,
  40. Overlay,
  41. Picker,
  42. Popup,
  43. PullRefresh,
  44. Radio,
  45. RadioGroup,
  46. Row,
  47. Slider,
  48. Swipe,
  49. SwipeCell,
  50. SwipeItem,
  51. Switch,
  52. Tab,
  53. Tabbar,
  54. TabbarItem,
  55. Tabs,
  56. Toast,
  57. ActionSheet,
  58. } from 'vant'; //按需加载vant组件
  59. Vue
  60. .use(Button)
  61. .use(Calendar)
  62. .use(Checkbox)
  63. .use(CheckboxGroup)
  64. .use(Cell)
  65. .use(CellGroup)
  66. .use(Col)
  67. .use(DatetimePicker)
  68. .use(Dialog)
  69. .use(Divider)
  70. .use(Empty)
  71. .use(Icon)
  72. .use(Image)
  73. .use(Form)
  74. .use(Field)
  75. .use(Lazyload)
  76. .use(List)
  77. .use(Loading)
  78. .use(NavBar)
  79. .use(NoticeBar)
  80. .use(Notify)
  81. .use(Overlay)
  82. .use(Picker)
  83. .use(Popup)
  84. .use(PullRefresh)
  85. .use(Radio)
  86. .use(RadioGroup)
  87. .use(Row)
  88. .use(Slider)
  89. .use(Swipe)
  90. .use(SwipeCell)
  91. .use(SwipeItem)
  92. .use(Switch)
  93. .use(Tab)
  94. .use(Tabbar)
  95. .use(TabbarItem)
  96. .use(Tabs)
  97. .use(Toast)
  98. .use(ActionSheet)
  99. Vue.config.productionTip = false;
  100. Vue.config.devtools = true;
  101. // 全局配置 loading
  102. Toast.setDefaultOptions('success', {
  103. duration: 2500,
  104. forbidClick: true,
  105. });
  106. Toast.setDefaultOptions('loading', {
  107. duration: 0,
  108. forbidClick: true,
  109. });
  110. Dialog.setDefaultOptions({
  111. confirmButtonColor: "#3296fa",
  112. showCancelButton: false,
  113. });
  114. Vue.config.productionTip = false;
  115. Vue.prototype.$dayjs = dayjs;
  116. Vue.prototype.$bus = new Vue();
  117. router.afterEach((to, from, next) => {
  118. // 创建百度统计js
  119. setTimeout(()=>{
  120. var _hmt = _hmt || [];
  121. (function() {
  122. var hm = document.createElement("script");
  123. hm.src = BaiduStatisticsModel[ process.env.NODE_ENV ];
  124. var s = document.getElementsByTagName("script")[0];
  125. s.parentNode.insertBefore(hm, s);
  126. })();
  127. },0);
  128. });
  129. new Vue({
  130. router,
  131. store,
  132. render: (h) => h(App),
  133. }).$mount("#app");