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)
})