1、使用Promise封装Ajax请求
// 封装一个get请求的方法
function getJSON(url) {
return new Promise(function(resolve, reject) {
var XHR = new XMLHttpRequest();
XHR.open('GET', url, true);
XHR.send();
XHR.onreadystatechange = function() {
if (XHR.readyState == 4) {
if (XHR.status == 200) {
try {
var response = JSON.parse(XHR.responseText);
resolve(response);
} catch (e) {
reject(e);
}
} else {
reject(new Error(XHR.statusText));
}
}
}
})
}
getJSON(url).then(resp => console.log(resp));
作者:这波能反杀
链接:https://www.jianshu.com/p/fe5f173276bd
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
2、使用Promise加载图片
let preloadImg = (src) => {
return new Promise(function(resolve,reject){
let img = new Image();
img.onload = function () {
resolve(img)
}
img.onerror = function () {
reject(new Error('出错了'))
}
img.src = src
})
}