UNPKG

enc-framework

Version:

enc-framework 核心组件.

71 lines (61 loc) 1.86 kB
import Vue from 'vue' import Vuex from 'vuex' import User from './user' import Permission from './permission' import System from './system' import Platform from './platform' import Auth from './auth' // 安装插件 Vue.use(Vuex) // 爱加密存储对象 const AjmStore = function (options) { this.options = options || {}; let modules = this.options.modules || {}; // 添加用户模块 modules.user = User; // 权限模块 modules.permission = Permission; // 系统模块 modules.system = System; // 平台信息 modules.platform = Platform; // 授权模块 modules.auth = Auth; // 设置模块 this.modules = modules; // 存储对象 this.store = new Vuex.Store({ // 模块 modules: this.modules, // get属性 getters: { // 用户信息 userInfo: state => state.user.userInfo, // Token信息 tokenInfo: state => state.user.tokenInfo, // 权限信息 permissions: state => state.permission.permissions, // 按钮编码集合 buttonCodes:state => state.permission.buttonCodes, // 菜单集合 menus: state => state.permission.menus, // 系统信息W systemInfo: state => state.system.systemInfo, // 授权状态 authOvertime: state => state.platform.platformInfo.authorizationInfoVO.isAuthOvertime, // 设备ID deviceId: state => state.platform.platformInfo.authorizationInfoVO.deviceId, // 平台信息 platformInfo: state => state.platform.platformInfo } }) } // 获取存储对象 AjmStore.prototype.getStore = function () { return this.store; } // 注册模块 AjmStore.prototype.registerModule = function (moduleName,moduleObj) { return this.store.registerModule(moduleName,moduleObj); } export default AjmStore