手写promise版本ajax
来源:互联网 发布:美国驾照在中国 知乎 编辑:程序博客网 时间:2024/05/16 06:06
// ajax函数将返回Promise对象:
function ajax(method, url, data) {
var request = new XMLHttpRequest();
return new Promise(function (resolve, reject) {
request.onreadystatechange = function () {
if (request.readyState === 4) {
if (request.status === 200) {
resolve(request.responseText);
} else {
reject(request.status);
}
}
};
request.open(method, url);
request.send(data);
});
}
var log = document.getElementById('test-promise-ajax-result');
var p = ajax('GET', '/api/categories');
p.then(function (text) { // 如果AJAX成功,获得响应内容
log.innerText = text;
}).catch(function (status) { // 如果AJAX失败,获得响应代码
log.innerText = 'ERROR: ' + status;
function ajax(method, url, data) {
var request = new XMLHttpRequest();
return new Promise(function (resolve, reject) {
request.onreadystatechange = function () {
if (request.readyState === 4) {
if (request.status === 200) {
resolve(request.responseText);
} else {
reject(request.status);
}
}
};
request.open(method, url);
request.send(data);
});
}
var log = document.getElementById('test-promise-ajax-result');
var p = ajax('GET', '/api/categories');
p.then(function (text) { // 如果AJAX成功,获得响应内容
log.innerText = text;
}).catch(function (status) { // 如果AJAX失败,获得响应代码
log.innerText = 'ERROR: ' + status;
});
如果你想详细了解promise: http://www.jianshu.com/p/05de7c1ef080
如果你想了解promise与ajax: http://www.cnblogs.com/284628487a/p/5556144.html
阅读全文
0 0
- 手写promise版本ajax
- ajax&promise
- 手写ajax
- 手写 ajax
- 手写Ajax
- 手写Ajax
- Promise+ajax && async+await+promise+ajax
- Promise.js with AJAX
- ajax 、jsonp 、Promise 封装
- Promise,Ajax,fetch
- promise中调用ajax
- 封装ajax和Promise
- promise wrap ajax
- Promise封装ajax请求
- 手写Ajax核心代码
- ASP.NET手写AJAX
- Ajax手写代码应知应会
- Java手写Ajax
- 53. Maximum Subarray
- 框架导出word
- UnityShader从入门到放弃(二)表面着色器和顶点、片元着色器
- JavaSE (十)面向对象之封装续......
- 自定义布局文件布局格式是这样子滴
- 手写promise版本ajax
- hive udf与transform
- 隐藏的秘密文件
- longest-substring-without-repeating-characters
- html学习笔记
- HTML5简介
- phpstudy中输入localhost出错解决方案
- oracle ORA-01704问题(clob字段insert报错)
- 覆盖equals时请遵守通用约定。