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.
|
|
|
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: "indexWork",
|
|
|
|
},
|
|
|
|
],
|
|
|
|
contentTabsActiveName: "indexWork",
|
|
|
|
|
|
|
|
mainShuju: {
|
|
|
|
menuList: [],
|
|
|
|
activeName: "",
|
|
|
|
},
|
|
|
|
},
|
|
|
|
modules: {
|
|
|
|
user,
|
|
|
|
app,
|
|
|
|
tagsView,
|
|
|
|
},
|
|
|
|
mutations: {
|
|
|
|
// 重置vuex本地储存状态
|
|
|
|
resetStore(state) {
|
|
|
|
Object.keys(state).forEach((key) => {
|
|
|
|
state[key] = cloneDeep(window.SITE_CONFIG["storeState"][key]);
|
|
|
|
});
|
|
|
|
},
|
|
|
|
},
|
|
|
|
});
|