Files
dvcp_v2_webapp/src/main.js
aixianling 711db33df3 refactor(home): 重构首页配置和路由处理
- 修改首页路由动态加载逻辑
- 优化滑动导航组件中的菜单处理
- 调整 Vuex store 中的 mods 数据处理方式
- 重构 main.js 中的 HomePage 配置
2024-12-23 14:38:32 +08:00

33 lines
1.3 KiB
JavaScript

import Vue from 'vue';
import App from './App.vue';
import ui from 'element-ui';
import router from './utils/router';
import utils from './utils';
import vcUI from 'dui/packages';
import appComp from 'dui/dv';
import store from './utils/store';
import extra from "./config.json"
import axios from "./utils/axios";
//备注底座信息,勿删
console.log("欢迎使用%s", extra.sysInfo?.name || "构建版本")
window.Vue = Vue
Vue.use(ui);
Vue.use(vcUI);
Vue.use(appComp);
Vue.config.productionTip = false;
Vue.prototype.$cdn = "https://cdn.cunwuyun.cn"
Vue.prototype.$request = axios
const home = extra.homePage || 'console'
Vue.prototype.$HomePage = {name: '工作台', label: '工作台', component: home, id: `/v/${home}`, path: `/v/${home}`, style: "iconfont iconNav_Dashborad"}
Object.keys(utils).map((e) => (Vue.prototype[e] = utils[e]));
const loadPage = () => new Vue({router, store, render: h => h(App)}).$mount("#app")
let theme = null
store.dispatch('getSystem', extra.sysInfo).then(res => {
theme = JSON.parse(res?.colorScheme || null)
return import(`dui/lib/styles/theme.${theme?.web}.scss`).catch(() => 0)
}).finally(() => {
Vue.prototype.$theme = theme?.web || "blue"
!!theme?.web && theme?.web != "blue" ? loadPage() : import(`dui/lib/styles/common.scss`).finally(loadPage)
})