很简单的功能,先获取用户表,然后根据用户表中的roles字段,在获取每个用户的的角色再进行展示。
async getResource(){
...
getUserList(params).then((res) => {
_this.dataSource = list
// 处理角色
let promiseArray=_this.dataSource.map((item,index)=>{
return _this.getRoleName(item,index)
})
Promise.all(promiseArray).then(roles=>{
for(let i=0;i<roles.length;i++){
if(_this.dataSource[i].id==roles[i].id){
_this.dataSource[i].remark=roles[i].role
}
}
})
}
})
},
getRoleName(item,index){
return new Promise((resolve, reject)=>{
getRoles({userid: item.id}).then(res=>{
resolve({id:item.id,role:res.data.data})
})
})
},
获取角色时返回promise,然后使用Promise.all对dataSource进行处理。