全栈:Promise封装Ajax()-ajax
全栈:Promise封装Ajax()
使用Promise封装Ajax
function myaxios (url) {
//创建一个promise对象
var p1=new Promise(function(n1,n2){
//Ajax
var xhr=new XMLHttpRequest()
xhr.open("GET",url,true)
xhr.send()
xhr.onreadystatechange=function(){
if(xhr.readyState==4&&xhr.status==200){
n1(xhr.responseText)
}else if(xhr.readyState==4&&xhr.status==404){
n2(xhr.responseText)
}
}
})
return p1//返回的也是promise对象
}
使用此promise封装的Ajax工具
function fn(){
var url="http://192.168.10.4:8080/ajax"
myaxios(url).then((res)=>{
console.log(res)//调试结果
})
}
————————
使用Promise封装Ajax
function myaxios (url) {
//创建一个promise对象
var p1=new Promise(function(n1,n2){
//Ajax
var xhr=new XMLHttpRequest()
xhr.open("GET",url,true)
xhr.send()
xhr.onreadystatechange=function(){
if(xhr.readyState==4&&xhr.status==200){
n1(xhr.responseText)
}else if(xhr.readyState==4&&xhr.status==404){
n2(xhr.responseText)
}
}
})
return p1//返回的也是promise对象
}
使用此promise封装的Ajax工具
function fn(){
var url="http://192.168.10.4:8080/ajax"
myaxios(url).then((res)=>{
console.log(res)//调试结果
})
}