/* * 操作全局Vuex。 * 作者:tmzdy * 时间:‎2021‎年‎10‎月‎14‎日 * 联系:zhongjihan@sina.com * */ class vuex { constructor(store) { this.store = store; } //链式调用 state(){ return this.store.state; } //链式调用 getters(){ let t = this; const g = this.store.getters let keys = Object.keys(g); let k = keys.map((el,index)=>{ let f = el.split('/'); let tst = {} if(f.length==1){ tst[el]=g[el] }else{ tst[f[0]]={} tst[f[0]][f[1]] = g[el] } return tst }) let rulst = {}; k.forEach(el=>{ rulst = {...rulst,...el} }) return rulst; } commit(funName,arg){ try{ this.store.commit(funName,arg); }catch(e){ console.error("未发现函数方法:"+funName) } } actions(funName,arg){ try{ return this.store.dispatch(funName,arg); }catch(e){ console.error("未发现函数方法:"+funName) } } //获得原始vuex对象。 getVuex(){ return this.store; } } export default vuex;