main.ts 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import { createApp } from 'vue';
  2. import '@/assets/styles/index.scss';
  3. import App from './App.vue';
  4. import router from './router';
  5. import store from './store';
  6. import api from './api';
  7. import utils from './utils';
  8. import plugins from './plugins/index';
  9. import animate from './utils/animate';
  10. import VueLazyload from 'vue-lazyload';
  11. import './router/permission';
  12. // 自定义指令
  13. import directive from './directive';
  14. // svg图标
  15. import 'virtual:svg-icons-register';
  16. import ElementIcons from '@/plugins/svgicon';
  17. import ElementPlus from 'element-plus'
  18. import zhCn from 'element-plus/es/locale/lang/zh-cn'
  19. const app = createApp(App);
  20. // 预设动画
  21. app.config.globalProperties.animate = animate;
  22. // 请求方法
  23. app.config.globalProperties.$http = api;
  24. // 请求方法
  25. app.config.globalProperties.$utils = utils;
  26. //图标
  27. app.use(ElementIcons);
  28. //路由
  29. app.use(router);
  30. //插件
  31. app.use(plugins);
  32. //缓存数据
  33. app.use(store);
  34. //图片懒加载
  35. app.use(VueLazyload, {
  36. preLoad: 1.3,
  37. attempt: 1,
  38. });
  39. //ElementUi默认中文
  40. app.use(ElementPlus, {
  41. locale: zhCn,
  42. })
  43. // 自定义指令
  44. directive(app);
  45. app.mount('#app');