import Vue from 'vue' import Vuex from 'vuex'; import createPersistedState from 'vuex-persistedstate'; Vue.use(Vuex) const state = { username: "", password: "", selectedEnv: 1, userInfo: {}, locale: "", } const store = new Vuex.Store({ state, /// 仓库数据本身 plugins: [ // 可以有多个持久化实例 createPersistedState({ key: 'app_config_data', // 状态保存到本地的 key storage: { // 存储方式定义 getItem: (key) => uni.getStorageSync(key), // 获取 setItem: (key, value) => uni.setStorageSync(key, value), // 存储 removeItem: (key) => uni.removeStorageSync(key) // 删除 } }) ], /// 修改仓库数据的唯一方式 改变状态 mutations: { selecteEnv: (state, value) => state.selectedEnv = value, setUserName: (state, value) => state.username = value, setPassword: (state, value) => state.password = value, setUserInfo: (state, value) => state.userInfo = value, setLocale: (state, value) => state.locale = value, clearUserInfo: (state) => state.userInfo = {} }, /// 仓库中的计算属性 getters: {}, /// 异步修改仓库数据 最终只能还是mutations修改仓库数据 actions: {}, /// 模块化 modules: {}, }); export default store