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

20
src/views/common/theme.vue

@ -17,15 +17,31 @@
</template> </template>
<script> <script>
import {updateNavbarLayoutType,updateSidebarLayoutSkin} from '@/api/sysConfig.js'
export default { export default {
computed: { computed: {
navbarLayoutType: { navbarLayoutType: {
get () { return this.$store.state.common.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: { sidebarLayoutSkin: {
get () { return this.$store.state.common.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.dynamicMenuRoutes = JSON.parse(sessionStorage.getItem('dynamicMenuRoutes') || '[]')
this.routeHandle(this.$route) this.routeHandle(this.$route)
this.getFunctionButtonList() this.getFunctionButtonList()
this.changeStyle()
}, },
destroyed() { destroyed() {
EventBus.$off('updateFavoriteList', this.updateFavoriteList); EventBus.$off('updateFavoriteList', this.updateFavoriteList);
}, },
methods: { methods: {
changeStyle(){
let data= JSON.parse(sessionStorage.getItem('userConfig') || '{}')
this.$store.commit('common/updateNavbarLayoutType', data.navbarLayoutType)
this.$store.commit('common/updateSidebarLayoutSkin', data.sidebarLayoutSkin)
},
// //
// //
getFunctionButtonList() { getFunctionButtonList() {

Loading…
Cancel
Save