1.axios 原理還是屬於 XMLHttpRequest, 因此需要實現一個ajax。 2.但還會需要一個promise對象來對結果進行處理。3.ajax實現var Ajax={ get: function(url, fn) { // XMLHttpRequest對象用於在後臺與伺服器交換數據 v ...
1.axios 原理還是屬於 XMLHttpRequest, 因此需要實現一個ajax。
2.但還會需要一個promise對象來對結果進行處理。
3.ajax實現
var Ajax={
get: function(url, fn) {
// XMLHttpRequest對象用於在後臺與伺服器交換數據
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange = function() {
// readyState == 4說明請求已完成
if (xhr.readyState == 4 && xhr.status == 200) {
// 從伺服器獲得數據
fn.call(this, xhr.responseText);
}
};
xhr.send();
}
}
axios實現
var Axios = {
get: function(url) {
return new Promise((resolve, reject) => {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
xhr.onreadystatechange = function() {
// readyState == 4說明請求已完成
if (xhr.readyState == 4 && xhr.status == 200) {
// 從伺服器獲得數據
resolve(xhr.responseText)
}
};
xhr.send();
})
},
}