promise代码结构?Promise语法含有四步强制要求:1、Promise是一个class类,所以可以用new Promise()创建Promise对象,接下来我们就来聊聊关于promise代码结构?以下内容大家不妨参考一二希望能帮到您!
Promise语法含有四步强制要求:
1、Promise是一个class类,所以可以用new Promise()创建Promise对象
2、new Promise(写入function函数)
3、function中需要传入两个参数resolve和reject,用于接收成功时和失败时的回调
4、需要return返回值
Promise类默认书写格式:
class Promise{
constructor(fn) {
this.successList = []
this.failList = []
fn(() => {
resolve(this)
},() => {
reject(this)
})
}
then(successList,failList){
this.successList.push(successList)
this.failList.push(failList)
}
}
Promise结合案例:
以jQuery库调用ajax为例
function getAjax(url) {
return new Promise(function(resolve,reject){
$.ajax({
type:'POST',
dataType:'json',
url:url,
data:{
param1:'param1'
},
scuess:function(data){
resolve(data)
},
error:function(){
reject()
}
})
})
}
let url = '/xxx/xxx/xxx?id=2'
let res = getAjax(url)
res.then(function(data){
console.log("请求成功")
console.log(data)
},function(){
console.log("请求失败")
})