vue中Promise物件用法
阿新 • • 發佈:2019-01-01
Promise.all([
需要非同步一起執行的方法
]).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;
}
});
}