美文网首页
js读取接口返回的最快的那一个

js读取接口返回的最快的那一个

作者: 仰望天空的人 | 来源:发表于2021-12-31 08:59 被阅读0次

    promise.race

    顾名思义,Promse.race就是赛跑的意思,意思就是说,Promise.race([p1, p2, p3])里面哪个结果获得的快,就返回那个结果,不管结果本身是成功状态还是失败状态。

          Promise.race([
            this.$axios.get("api/one"),
            this.$axios.get("api/two"),
            this.$axios.get("api/three")
          ]).then(data => {
            console.log(data);
          });
    
    ![image.png](https://img.haomeiwen.com/i11248214/850dce1036d286e5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    Promse.all

    Promse.all在处理多个异步处理时非常有用,比如说一个页面上需要等两个或多个ajax的数据回来以后才正常显示,在此之前只显示loading图标。
    需要特别注意的是,Promise.all获得的成功结果的数组里面的数据顺序和Promise.all接收到的数组顺序是一致的,即p1的结果在前,即便p1的结果获取的比p2要晚。这带来了一个绝大的好处:在前端开发请求数据的过程中,偶尔会遇到发送多个请求并根据请求顺序获取和使用数据的场景,使用Promise.all毫无疑问可以解决这个问题。

    相关文章

      网友评论

          本文标题:js读取接口返回的最快的那一个

          本文链接:https://www.haomeiwen.com/subject/eottfrtx.html