ruanqi 1 year ago
parent
commit
e29872e99c
  1. 5
      src/api/sysConfig.js
  2. 5
      src/router/index.js
  3. 20
      src/views/common/theme.vue
  4. 6
      src/views/main-sidebar.vue

5
src/api/sysConfig.js

@ -6,3 +6,8 @@ import { createAPI } from "@/utils/httpRequest.js";
// 获取 语言列表
export const getConfigParams = data => createAPI(`/sys/config/getConfigParams`,'post',data)
export const updateNavbarLayoutType = data => createAPI(`/sys/menu/updateNavbarLayoutType`,'post',data)
export const updateSidebarLayoutSkin = data => createAPI(`/sys/menu/updateSidebarLayoutSkin`,'post',data)

5
src/router/index.js

@ -59,7 +59,7 @@ const router = new Router({
routes: globalRoutes.concat(mainRoutes)
})
router.beforeEach((to, from, next) => {
router.beforeEach((to, from, next) => {console.log(Vue.prototype.$store)
// 添加动态(菜单)路由
// 1. 已经添加 or 全局路由, 直接访问
// 2. 获取菜单列表, 添加并保存本地存储
@ -80,7 +80,8 @@ router.beforeEach((to, from, next) => {
router.options.isAddDynamicMenuRoutes = true
sessionStorage.setItem('menuList', JSON.stringify(data.menuList || '[]'))
sessionStorage.setItem('permissions', JSON.stringify(data.permissions || '[]'))
next({ ...to, replace: true })
sessionStorage.setItem('userConfig', JSON.stringify(data.userConfig || '[]'))
next({ ...to, replace: true })
} else {
sessionStorage.setItem('menuList', '[]')
sessionStorage.setItem('permissions', '[]')

20
src/views/common/theme.vue

@ -17,15 +17,31 @@
</template>
<script>
import {updateNavbarLayoutType,updateSidebarLayoutSkin} from '@/api/sysConfig.js'
export default {
computed: {
navbarLayoutType: {
get () { return this.$store.state.common.navbarLayoutType },
set (val) { this.$store.commit('common/updateNavbarLayoutType', val) }
set (val) {
this.$store.commit('common/updateNavbarLayoutType', val)
let inData={
username:this.$store.state.user.name,
navbarLayoutType:this.$store.state.common.navbarLayoutType
}
updateNavbarLayoutType(inData).then(({data}) => {
})
}
},
sidebarLayoutSkin: {
get () { return this.$store.state.common.sidebarLayoutSkin },
set (val) { this.$store.commit('common/updateSidebarLayoutSkin', val) }
set (val) { this.$store.commit('common/updateSidebarLayoutSkin', val)
let inData={
username:this.$store.state.user.name,
sidebarLayoutSkin:this.$store.state.common.sidebarLayoutSkin
}
updateSidebarLayoutSkin(inData).then(({data}) => {
})
}
}
}
}

6
src/views/main-sidebar.vue

@ -121,11 +121,17 @@ export default {
this.dynamicMenuRoutes = JSON.parse(sessionStorage.getItem('dynamicMenuRoutes') || '[]')
this.routeHandle(this.$route)
this.getFunctionButtonList()
this.changeStyle()
},
destroyed() {
EventBus.$off('updateFavoriteList', this.updateFavoriteList);
},
methods: {
changeStyle(){
let data= JSON.parse(sessionStorage.getItem('userConfig') || '{}')
this.$store.commit('common/updateNavbarLayoutType', data.navbarLayoutType)
this.$store.commit('common/updateSidebarLayoutSkin', data.sidebarLayoutSkin)
},
//
//
getFunctionButtonList() {

Loading…
Cancel
Save