main.js 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { createApp } from 'vue';
  2. // global css
  3. import 'virtual:uno.css';
  4. import '@/assets/styles/index.scss';
  5. import 'element-plus/theme-chalk/dark/css-vars.css';
  6. // App、router、store
  7. import App from './App.vue';
  8. import store from './store';
  9. import router from './router';
  10. // 自定义指令
  11. import directive from './directive';
  12. // 注册插件
  13. import plugins from './plugins/index';
  14. // 高亮组件
  15. // import 'highlight.js/styles/a11y-light.css';
  16. import 'highlight.js/styles/atom-one-dark.css';
  17. import 'highlight.js/lib/common';
  18. import HighLight from '@highlightjs/vue-plugin';
  19. // svg图标
  20. import 'virtual:svg-icons-register';
  21. import ElementIcons from '@/plugins/svgicon';
  22. // permission control
  23. import './permission';
  24. // vxeTable
  25. import VXETable from 'vxe-table';
  26. import 'vxe-table/lib/style.css';
  27. VXETable.config({
  28. zIndex: 999999
  29. });
  30. // 修改 el-dialog 默认点击遮照为不关闭
  31. import { ElDialog } from 'element-plus';
  32. ElDialog.props.closeOnClickModal.default = false;
  33. const app = createApp(App);
  34. app.use(HighLight);
  35. app.use(ElementIcons);
  36. app.use(router);
  37. app.use(store);
  38. app.use(VXETable);
  39. app.use(plugins);
  40. // 自定义指令
  41. directive(app);
  42. app.mount('#app');