You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
2.3 KiB
TypeScript
99 lines
2.3 KiB
TypeScript
import { createApp, provide } from 'vue';
|
|
// global css
|
|
import 'virtual:uno.css';
|
|
import '@/assets/styles/index.scss';
|
|
import 'element-plus/theme-chalk/dark/css-vars.css';
|
|
import '@vue-flow/core/dist/style.css';
|
|
import '@vue-flow/core/dist/theme-default.css';
|
|
import '@vue-flow/node-resizer/dist/style.css';
|
|
|
|
// App、router、store
|
|
import App from './App.vue';
|
|
import store from './store';
|
|
import router from './router';
|
|
|
|
// 自定义指令
|
|
import directive from './directive';
|
|
import {
|
|
detectingNullValues,
|
|
limitSolve,
|
|
parseData,
|
|
clearObjNull,
|
|
clearArrNull,
|
|
clearNull,
|
|
parseTime,
|
|
getFinalData,
|
|
testColor
|
|
} from '@/utils/scrin';
|
|
import request from '@/utils/request';
|
|
|
|
// 注册插件
|
|
import plugins from './plugins/index'; // plugins
|
|
|
|
// 高亮组件
|
|
// import 'highlight.js/styles/a11y-light.css';
|
|
import 'highlight.js/styles/atom-one-dark.css';
|
|
import 'highlight.js/lib/common';
|
|
import HighLight from '@highlightjs/vue-plugin';
|
|
|
|
// svg图标
|
|
import 'virtual:svg-icons-register';
|
|
import ElementIcons from '@/plugins/svgicon';
|
|
|
|
|
|
import ElementPlus from 'element-plus';
|
|
import 'element-plus/dist/index.css';
|
|
import VForm3 from 'vform3-builds';
|
|
import 'vform3-builds/dist/designer.style.css';
|
|
|
|
// permission control
|
|
import './permission';
|
|
|
|
// 国际化
|
|
import i18n from '@/lang/index';
|
|
|
|
// vxeTable
|
|
import VXETable from 'vxe-table';
|
|
import 'vxe-table/lib/style.css';
|
|
|
|
|
|
VXETable.config({
|
|
zIndex: 999999
|
|
});
|
|
|
|
// 修改 el-dialog 默认点击遮照为不关闭
|
|
import { ElDialog } from 'element-plus';
|
|
|
|
ElDialog.props.closeOnClickModal.default = false;
|
|
|
|
import vue3SeamlessScroll from 'vue3-seamless-scroll';
|
|
|
|
const app = createApp(App);
|
|
|
|
|
|
app.provide('$limitSolve', limitSolve);
|
|
app.provide('$clearObjNull', clearObjNull);
|
|
app.provide('$clearArrNull', clearArrNull);
|
|
app.provide('$clearNull', clearNull);
|
|
app.provide('$parseData', parseData);
|
|
app.provide('$parseTime', parseTime);
|
|
app.provide('$request', request);
|
|
app.provide('$detectingNullValues', detectingNullValues);
|
|
app.provide('$getFinalData', getFinalData);
|
|
app.provide('$testColor', testColor);
|
|
|
|
app.use(vue3SeamlessScroll);
|
|
app.use(HighLight);
|
|
app.use(ElementIcons);
|
|
app.use(ElementPlus);
|
|
app.use(VForm3);
|
|
app.use(router);
|
|
app.use(store);
|
|
app.use(i18n);
|
|
app.use(VXETable);
|
|
app.use(plugins);
|
|
// 自定义指令
|
|
directive(app);
|
|
|
|
app.mount('#app');
|