vue中Promise对象用法

[ 需要异步一起执行的方法 ]).then(res=>{ res里面存放的是数组,上面有多少个方法就有多少个index,每个index是上面对应的方法的返回值 })

实战

//获取列表 getDataList(){ Promise.all([ this.searchEquipmentList(), this.getEquipmentMode() ]).then((res)=>{ if(res && res.length === 2 && res[0] && res[1]) { this.curMode = res[0].mode; this.equipmentSearchList = res[0].camera; this.videoType = res[1]; let searchList = this.equipmentSearchList; let cary = []; //获取已选的设备编号 for(var x = 0;x < searchList.length;x++){ cary.push(searchList[x].channel); } let channelNumber = this.videoType.end_no - this.videoType.start_no; let channelList = []; // 通道列表 for(var i = 0;i<=channelNumber;i++){ //封装通道 let cNum = this.videoType.start_no+i let cName_num = i+1 var flag = true; //对比删除已选的设备 for(var a = 0;a < cary.length;a++){ if(cNum==cary[a]){ flag = false break } } if(flag){ let cName = String("通道"+cName_num) channelList.push({"name":cName,"value":cNum}) } } this.channalList = channelList; } }); }