LinYeFangHuo/src/main.ts

114 lines
3.1 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

import 'uno.css';
import '@/design/index.less';
import 'ant-design-vue/dist/reset.css';
// Register icon sprite
import 'virtual:svg-icons-register';
import { createApp } from 'vue';
import { setupGlobDirectives } from '@/directives';
import { setupI18n } from '@/locales/setupI18n';
import { setupErrorHandle } from '@/logics/error-handle';
import { initAppConfigStore } from '@/logics/initAppConfig';
import { router, setupRouter } from '@/router';
import { setupRouterGuard } from '@/router/guard';
import { setupStore } from '@/store';
import App from './App.vue';
import ElementPlus from 'element-plus';
import 'element-plus/theme-chalk/index.css';
import VForm3 from '@/../lib/vform/designer.umd.js';
import '../lib/vform/designer.style.css';
import Antd from 'ant-design-vue';
import { signal } from './utils/signalR';
// 火星地图
import "mars3d-cesium/Build/Cesium/Widgets/widgets.css"
import "mars3d/mars3d.css"
// 新增
// 引入全局样式
import '@/styles/pages/index.scss';
// 引入动画
import 'animate.css/animate.min.css';
// 引入标尺
import 'vue3-sketch-ruler/lib/style.css';
import uimIcons from '@iconify/json/json/uim.json';
import lineMdIcons from '@iconify/json/json/line-md.json';
import wiIcons from '@iconify/json/json/wi.json';
import { addCollection } from 'iconify-icon';
import { setupNaive, setupDirectives, setupCustomComponents, initFunction } from '@/plugins';
import { GoAppProvider } from '@/components/GoAppProvider/index';
import * as echarts from 'echarts'
// 注册图标
addCollection(uimIcons);
addCollection(lineMdIcons);
addCollection(wiIcons);
async function bootstrap() {
const app = createApp(App);
app.use(Antd);
// 语言注册
// app.use(i18n);
// 在Vue应用挂载后绑定$t到window对象
app.config.globalProperties.$echarts = echarts
// 注册全局常用的 naive-ui 组件
setupNaive(app);
// 注册全局自定义指令
setupDirectives(app);
// 注册全局自定义组件
setupCustomComponents(app);
// Configure store
// 配置 store
setupStore(app);
// Initialize internal system configuration
// 初始化内部系统配置
initAppConfigStore();
// Multilingual configuration
// 多语言配置
// Asynchronous case: language files may be obtained from the server side
// 异步案例:语言文件可能从服务器端获取
await setupI18n(app);
// Configure routing
// 配置路由
setupRouter(app);
// router-guard
// 路由守卫
setupRouterGuard(router);
// Register global directive
// 注册全局指令
setupGlobDirectives(app);
// Configure global error handling
// 配置全局错误处理
setupErrorHandle(app);
// https://next.router.vuejs.org/api/#isready
// await router.isReady();
app.use(ElementPlus);
app.use(VForm3);
app.use(signal);
// 解决路由守卫Axios中可使用DialogMessage 等全局组件
const goAppProvider = createApp(GoAppProvider);
goAppProvider.mount('#appProvider', true);
// 路由准备就绪后挂载APP实例
await router.isReady();
app.mount('#app');
// 挂载到 window
window['$vue'] = app;
}
bootstrap().then(() => {
initFunction();
});