import Vue from 'vue' import store from '../store/' import { ACCESS_TOKEN, DEFAULT_COLOR, DEFAULT_THEME, DEFAULT_LAYOUT_MODE, DEFAULT_COLOR_WEAK, SIDEBAR_TYPE, DEFAULT_FIXED_HEADER, DEFAULT_FIXED_HEADER_HIDDEN, DEFAULT_FIXED_SIDEMENU, DEFAULT_CONTENT_WIDTH_TYPE, DEFAULT_MULTI_TAB } from '../store/mutation-types' import config from '../config/defaultSettings' // 导出一个默认的初始化函数 export default function Initializer () { // 从localStorage中获取SIDEBAR_TYPE,如果不存在则默认为true,并提交给store store.commit('SET_SIDEBAR_TYPE', Vue.ls.get(SIDEBAR_TYPE, true)) // 从localStorage中获取DEFAULT_THEME,如果不存在则默认为config.navTheme,并提交给store store.commit('TOGGLE_THEME', Vue.ls.get(DEFAULT_THEME, config.navTheme)) // 从localStorage中获取DEFAULT_LAYOUT_MODE,如果不存在则默认为config.layout,并提交给store store.commit('TOGGLE_LAYOUT_MODE', Vue.ls.get(DEFAULT_LAYOUT_MODE, config.layout)) // 从localStorage中获取DEFAULT_FIXED_HEADER,如果不存在则默认为config.fixedHeader,并提交给store store.commit('TOGGLE_FIXED_HEADER', Vue.ls.get(DEFAULT_FIXED_HEADER, config.fixedHeader)) // 从localStorage中获取DEFAULT_FIXED_SIDEMENU,如果不存在则默认为config.fixSiderbar,并提交给store store.commit('TOGGLE_FIXED_SIDERBAR', Vue.ls.get(DEFAULT_FIXED_SIDEMENU, config.fixSiderbar)) // 从localStorage中获取DEFAULT_CONTENT_WIDTH_TYPE,如果不存在则默认为config.contentWidth,并提交给store store.commit('TOGGLE_CONTENT_WIDTH', Vue.ls.get(DEFAULT_CONTENT_WIDTH_TYPE, config.contentWidth)) // 从localStorage中获取DEFAULT_FIXED_HEADER_HIDDEN,如果不存在则默认为config.autoHideHeader,并提交给store store.commit('TOGGLE_FIXED_HEADER_HIDDEN', Vue.ls.get(DEFAULT_FIXED_HEADER_HIDDEN, config.autoHideHeader)) // 从localStorage中获取DEFAULT_COLOR_WEAK,如果不存在则默认为config.colorWeak,并提交给store store.commit('TOGGLE_WEAK', Vue.ls.get(DEFAULT_COLOR_WEAK, config.colorWeak)) // 从localStorage中获取DEFAULT_COLOR,如果不存在则默认为config.primaryColor,并提交给store store.commit('TOGGLE_COLOR', Vue.ls.get(DEFAULT_COLOR, config.primaryColor)) // 从localStorage中获取DEFAULT_MULTI_TAB,如果不存在则默认为config.multiTab,并提交给store store.commit('TOGGLE_MULTI_TAB', Vue.ls.get(DEFAULT_MULTI_TAB, config.multiTab)) // 从localStorage中获取ACCESS_TOKEN,并提交给store store.commit('SET_TOKEN', Vue.ls.get(ACCESS_TOKEN)) // 最后一步 }