Es6-promise使用

promise的使用,为了更加简单的处理异步的操作

  写法:

  有三种状态 pending(进行中)resolved(成功)  rejected(失败)

  1.需要先创建一个promise的实例,

  2.使用关键字new进行声明

  3.声明的一个Promise中只需要进行接收两个数据一个是成功,一个失败的状态

  let pro =  new Promise(function( resolved,rejected){

    //对应的执行异步的操作,操作获取的数据

    //模拟后台返回的数据

    let res= {

       code:200,

       data:{

          name:“rocky”,

        },

        error:"传输失败"

    }

    setTimeout(()=>{

      if(res.code ===200){

        resolved(res.data)   //成功的时候

      }else{

         rejected(res.error) //失败的时候

      }

    },1000);

  })

  pro.then((val)=>{  //接收resolved的值

    console.log(val);

  },()=>{  //接收rejected的值

    console.log(err);

  })

 

封装:

  function timeOut(ms){

     return new Promise((resolved,rejected)=>{

        setTimeout(()=>{

          resolved('rocky is shuai!!!!')

        },ms);

      })

  }

  timeOut(2000).then((val)=>{

    console.log(val)

  })

 

posted @ 2022-05-06 17:14  一封未寄出的信  阅读(44)  评论(0编辑  收藏  举报