代码核心部分
_ajax.action("要传递的参数",function(返回值){ //得到返回值后的逻辑处理 }); vm.action("参数",fun){ //一堆处理后得到的返回值res fun(res) } 下面是完整实现过程 let vm = new Vue({ el:"#app", methods:{ //在_ajax()中调用action()方法的返回值 _ajax(limits=20,pages=1){ axios.get('/show',{params:{ limit:limits, page:pages }}).then(res=>{ var newList = []; res.data.data.map((item,index)=>{ newList.push(Object.assign({},item,{ischeck:false})) }) console.log(newList); //判断抢修级别 for(var i=0;i<newList.length;i++){ //此处调用action(); vm.action(newList[i].element_name,function(res){ newList[i].flow = res; }); } this.jzxLists = newList; },err=>{ console.log(err.statusText) }) }, action(jzName,fun){ $.ajax({ type:'get', url:'/flow', async :false, data:{ jzName:jzName }, success:function(res){ if(res){ var dataObj = eval('('+ res+')'); //取流量 var num = 0; for(var k=0;k<dataObj.length;k++){ num = num + parseFloat((parseFloat(dataObj[k].UpAndDownTheCell)/1024).toFixed(2)); } //取人数 var numMan = 0; for(var k=0;k<dataObj.length;k++){ numMan = numMan + parseFloat(dataObj[k].LargestUser); } var nu = num/numMan; fun(nu); }else{ fun(0); } } }) } } })