diff --git a/bin/build.js b/bin/build.js index 26b91a94..7240e07f 100644 --- a/bin/build.js +++ b/bin/build.js @@ -55,7 +55,7 @@ const createRoutes = (config = {}) => { {path: '/dv', name: '数据大屏入口', component: () => import('../views/dvIndex')}, {path: '/v', name: 'Home', component: () => import('../views/home'), children: [ {path:'/',name:'mainEntry', component:()=>import('../views/mainEntry'),children:[ - {name: "工作台", path: "${home}", component: () => import('${homePage}')}, + {name: "${home}", path: "${home}", component: () => import('${homePage}')}, ${routes.filter(e => ![sign, home].includes(e.name)).map(e => { // 解构每个路由的属性,用于生成路由配置 const {name, label, esm} = e diff --git a/src/components/sliderNav.vue b/src/components/sliderNav.vue index d3f8a2f1..7477d826 100644 --- a/src/components/sliderNav.vue +++ b/src/components/sliderNav.vue @@ -39,12 +39,12 @@ export default { }, computed: { ...mapGetters(['mods']), - navs: v => [v.$HomePage,...v.sortList(v.menuList)], + navs: v => [v.$HomePage, ...v.sortList(v.menuList)], menuPath() { - console.log(this.$route.name) - let paths = [], current = this.mods?.find(e => e.name == this.$route.name) + const mods = [this.$HomePage, ...this.mods] + let paths = [], current = mods?.find(e => e.component == this.$route.name) const findParent = id => { - let menu = this.mods?.find(e => e.id == id) + let menu = mods?.find(e => e.id == id) if (menu) { paths.push(menu.id) if (!!menu.parentId) findParent(menu.parentId) diff --git a/src/main.js b/src/main.js index 2d9b5ab0..7d399c10 100644 --- a/src/main.js +++ b/src/main.js @@ -17,7 +17,8 @@ Vue.use(appComp); Vue.config.productionTip = false; Vue.prototype.$cdn = "https://cdn.cunwuyun.cn" Vue.prototype.$request = axios -Vue.prototype.$HomePage = {name: '工作台', label: '工作台', component: extra.homePage || 'console', id: "/v/console", path: '/v/console', style: "iconfont iconNav_Dashborad"} +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 diff --git a/src/utils/store.js b/src/utils/store.js index 6bc79857..3ba2ce9f 100644 --- a/src/utils/store.js +++ b/src/utils/store.js @@ -9,12 +9,8 @@ Vue.use(Vuex) export default new Vuex.Store({ state: { - homePage: {} }, mutations: { - setHomePage(state, home) { - state.homePage = home - }, signOut(state, flag) { const base = extra.base || "" if (flag) { @@ -35,7 +31,6 @@ export default new Vuex.Store({ getters: { //后台数据库中的应用集合,在本工程中不一定存在 mods: state => [ - state.homePage, state.user.info?.menuSet?.map(e => ({route: e.id, ...e, label: e.name})) ].flat().filter(Boolean) },