You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.0 KiB
40 lines
1.0 KiB
2 years ago
|
// import Vue from 'vue'
|
||
|
import { mapState } from "vuex";
|
||
|
|
||
|
// const mixinsComputed = Vue.config.optionMergeStrategies.computed
|
||
|
// const mixinsMethods = Vue.config.optionMergeStrategies.methods
|
||
|
|
||
|
const mixin = {
|
||
|
computed: {
|
||
|
...mapState({
|
||
|
layoutMode: state => state.app.layout,
|
||
|
navTheme: state => state.app.theme,
|
||
|
primaryColor: state => state.app.color,
|
||
|
colorWeak: state => state.app.weak,
|
||
|
multipage: state => state.app.multipage,//多页签设置
|
||
|
fixedHeader: state => state.app.fixedHeader,
|
||
|
fixSiderbar: state => state.app.fixSiderbar,
|
||
|
contentWidth: state => state.app.contentWidth,
|
||
|
autoHideHeader: state => state.app.autoHideHeader,
|
||
|
sidebarOpened: state => state.app.sidebar.opened
|
||
|
})
|
||
|
}
|
||
|
}
|
||
|
|
||
|
const mixinDevice = {
|
||
|
computed: {
|
||
|
...mapState({
|
||
|
device: state => state.app.device,
|
||
|
})
|
||
|
},
|
||
|
methods: {
|
||
|
isMobile () {
|
||
|
return this.device === 'mobile'
|
||
|
},
|
||
|
isDesktop () {
|
||
|
return this.device === 'desktop'
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export { mixin, mixinDevice }
|