123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /*
- * 操作全局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;
|