// import Vue from 'vue' // import Vuex from 'vuex' import app from './modules/app' import portal from './modules/portal' import user from './modules/user' import getters from './getters' import {getUrlValue} from '@main/utils' Vue.use(Vuex) export default new Vuex.Store({ modules:{ portal, app, user }, getters, state: { appStatus:'loading'//failed , loading ,success }, mutations: { SET_appStatus(state,str){ state.appStatus = str; } }, actions: { async initApp(me){ //单点登录票据 if(window.HIVUI_SETTING.url!=location.origin&&window.HIVUI_SETTING.isSingleLogin&&getUrlValue('','ticket')){ function __ssoLogin(){ let returnPageUrl=window.location.origin+window.location.pathname; if(getUrlValue('','returnPage')){ returnPageUrl=getUrlValue('','returnPage'); } let params=window.location.search.slice(1).split("&").filter(item=>{ if(item.indexOf("ticket")==-1 && item.indexOf("returnPage")==-1){ return item } }); location = returnPageUrl+(params.length>0?'?':'')+params.join("&"); } await me.dispatch('user/login').then(res=>{ __ssoLogin(); }).catch(err=>{ __ssoLogin(); });//单点登录 } // await me.dispatch('user/load') //await me.dispatch('app/getPowers')//权限 // console.log('//权限 end') await me.dispatch('app/getMenus')//菜单 // console.log('//菜单 end') await me.dispatch('user/getInfo')//获取用户信息 // console.log('//获取用户信息 end') await me.dispatch('user/getBzList')//获取多岗信息 // console.log('//获取多岗信息 end') await me.dispatch('app/getLatelyUse')//最近使用 // console.log('//最近使用 end') //await me.dispatch('app/getQuickNav')//快速导航 // console.log('//快速导航 end') // await me.dispatch('portal/loadColumns')//栏目功能 // console.log('//栏目功能 end') // await me.dispatch('portal/loadList')//工作台门户列表 // console.log('//工作台门户列表 end') // await me.dispatch('portal/loadSysList')//系统门户列表 // console.log('//系统门户列表 end') }, setAppLoad({state,commit},status){ commit('SET_appStatus',status); } } })