import Vue from "vue"; import Vuex from "vuex"; import cloneDeep from "lodash/cloneDeep"; import user from "./modules/user"; import app from "./modules/app"; import tagsView from "./modules/tagsView"; Vue.use(Vuex); export default new Vuex.Store({ namespaced: true, state: { // 导航条, 布局风格, defalut(白色) / colorful(鲜艳) navbarLayoutType: "colorful", // 侧边栏, 布局皮肤, default(白色) / dark(黑色) sidebarLayoutSkin: "dark", // 侧边栏, 折叠状态 sidebarFold: false, // 侧边栏, 菜单 sidebarMenuList: [], sidebarMenuActiveName: "", LevelOneMenuActiveName: "", sidebarActiveSubMenuList: [], // 内容, 是否需要刷新 contentIsNeedRefresh: false, // 内容, 标签页(默认添加首页) contentTabs: [ { ...window.SITE_CONFIG["contentTabDefault"], name: "indexWork", title: "首页", }, ], contentTabsActiveName: "indexWork", mainShuju: { menuList: [], activeName: "", }, inIframe: window.self !== window.top, }, modules: { user, app, tagsView, }, mutations: { // 重置vuex本地储存状态 resetStore(state) { Object.keys(state).forEach((key) => { state[key] = cloneDeep(window.SITE_CONFIG["storeState"][key]); }); }, }, });