首页 > 其他 > 详细

es6中promise 使用总结

时间:2020-03-04 11:01:01      阅读:76      评论:0      收藏:0      [点我收藏+]

 es6中promise实现ajax的例子

function getData(url){
        var pro = new Promise(function(resolve,reject){
            var xhr = null;
            try{
                xhr = new XMLHttpRequest()
            }
            catch(e){
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhr.open("get",url);
            xhr.onreadystatechange=function (){
                if(xhr.readyState===4){
                    if(xhr.status===200){
                        resolve(xhr.response);
                    }else{
                        reject(new Error(xhr.status));
                    }
                }
            }
            xhr.send()
        })
        return pro;
    }
    getData("xxxx.url").then(function(data){
        console.log(data);
    },function(error){
        console.log(error);
    })

 

 

readyState

       0:已建立对象但没有send

       1:已经send对象正在载入

   2:载入完成

   3:解析接收到数据

   4:解析完成,可以response

 状态 status

      200ok

      302:文件暂时性转移

      304:资源在上次请求后没有修改

  500:服务器内部问题

 

Promise.all的使用

 

Promise.all([
  getApplicationManage(params),
     msgListConfig(),
     emailListConfig(),
     wechatListConfig(),
     getModuleManage(params)
  ]).then(function(values) {
      _this.applicationData = values[0].model;
      _this.msgConfigOptions = values[1].model;
      _this.emailConfigOptions = values[2].model;
      _this.wechatConfigOptions = values[3].model;
      let resData = values[4].model;
  }).catch(error => {
       console.log(‘error‘);
  }).finally(() => {
       this.loading = false;
       console.log(‘finally‘);
 });

 

 

 

 

es6中promise 使用总结

原文:https://www.cnblogs.com/zhaozhenzhen/p/12407966.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!