注册一亩三分地论坛,查看更多干货!
您需要 登录 才可以下载或查看附件。没有帐号?注册账号 
x
拋磚引玉
.1point3acres
希望大家主要聊一下 Fetch与Promise 的關係。
感覺fetch就是直接調用了promise? . 1point 3acres
------------------------------------------------------------------------
ajax
-baidu 1point3acres
其实重点就是首先实例一个XMLHttpRequest对象,用其中的 open 方法建立连接; send 方法传输数据(前端传到后台);然后再利用 onreadystatechange 监听readyState的变化,当其为 4 时,代表请求完成;
function ajax(url,suc,fail) {
var xhr = new XMLHttpRequest();
xhr.open('GET',url, true);
xhr.onreadystatechange = function () {
if(xhr.readyState == 4){
if(xhr.status == 200){
suc(xhr.responseText). .и
} else {
console.log(err);. check 1point3acres for more.
fail(xhr.responseText);
}
}. 1point3acres.com
};
xhr.send(null);
}
------------------------------------------------------------------------
fetch
. 1point3acres
fetch 是全局量 window 的一个方法,它的主要特点有:
1、第一个参数是URL:
2、第二个是可选参数,可以控制不同配置的 init 对象
3、使用了 JavaScript Promises 来处理结果/回调-baidu 1point3acres
封装Ajax,实现Fetch.google и
. 1point 3acres
function fetch(url) {
return new Promise(function (resolve,reject) {
ajax(url,function (res) {
resolve(res);
},function (err) {
console.log(err);
reject(err);
})
})
}
|