複数の非同期リクエストは、処理後、データを順番に並べます

複数の非同期リクエストは、処理後、データを順番に並べます

話は安いです、コードを見せてください!

const axios = require('axios')

// 获取数据
function getData() {
    
    
    return  new Promise((resolve ,reject)=> {
    
    
        const idList = [188, 187, 190, 191, 192, 193, 194, 189, 195, 196, 198]
        const dataList = []
        idList.map(async item => {
    
    
            const url = `https://xxxx.xxx.xxx/data?id=${
      
      item}`
            const {
    
    data: res} = await axios.get(url)
            if(res.Code !== 0) return
            dataList.push(res.Data)
            if (dataList.length === idList.length) resolve(dataList)
        })
    })
}

// 得到数据后, 进行排序
getData().then(res => {
    
    
    function add(x,y) {
    
    
        return x.CategoryID - y.CategoryID
    }
    res = res.sort(add)
    console.log(res) // 这里的数据就是根据数据中的对象里面的CategoryID升序排序后的结果。
})

おすすめ

転載: blog.csdn.net/weixin_40944062/article/details/112799812