Escort/src/main.js

52 lines
1.3 KiB
JavaScript
Executable File

import { createSSRApp } from 'vue'
import 'virtual:uno.css'
import App from './App.vue'
import store from './store/index.js'
import router from './router/index.js'
// import routerGuards from './router/guards/index.js'
import api from './api/index.js'
import plugins from './plugins/index.js'
import mixins from './mixins/index.js'
import ViaIcon from './icons/components/ViaIcon/index.vue'
import { useDialog, useLoading, useToast } from './utils/modals/index.js'
import _showDictLabel from './utils/showDictLabel.js'
// 为 remote 时使用远程静态资源 常用于小程序
// 为 local 时使用本地静态资源
// import { useAssets } from './utils/assets/remote.js'
import { useAssets } from './utils/assets/local.js'
export function createApp () {
const app = createSSRApp(App)
app.use(store)
app.use(router)
// app.use(routerGuards, router)
app.use(api)
app.use(plugins)
app.use(mixins)
app.component('ViaIcon', ViaIcon)
app.config.globalProperties.$dialog = useDialog
app.config.globalProperties.$toast = useToast
app.config.globalProperties.$loading = useLoading
app.config.globalProperties.$showDictLabel = _showDictLabel
// 静态资源加载工具
app.config.globalProperties.$assets = useAssets
return {
app,
Pinia: store.Pinia,
}
}