更新记录
2.3.0(2021-06-01)
【重要】优化 重构底层代码,执行效率提升 42%
【重要】调整 修改错误事件拦截器返回触发回调机制 [详情][https://uniajax.ponjs.com/instance/interceptor.html]
【重要】移除 移除通过传入回调属性的方式获取 RequestTask 对象 [详情][https://uniajax.ponjs.com/usage/request-task.html]
【重要】调整 Typescript 类型 AjaxPromise 改为 Request,AjaxExecutor 改为 AjaxInvoke
新增 支持添加多个拦截器、移除指定拦截器 [详情][https://uniajax.ponjs.com/instance/interceptor.html#移除拦截器]
新增 可自定义请求方法 adapter [详情][https://uniajax.ponjs.com/instance/create.html#adapter]
2.2.9(2021-04-28)
修复 回调参数执行success/fail出错时无法执行complete
新增 实例函数配置时函数执行出错会触发请求错误事件
优化 传入回调参数获取RequestTask,当请求前错误时一直处于pending状态改为fulfilled状态
查看更多
平台兼容性
Vue
App
微信小程序
支付宝小程序
百度小程序
字节小程序
QQ小程序
快应用
vue2
app-vue app-nvue
√
√
√
√
√
√
H5-Safari
Android Browser
微信浏览器(Android)
QQ浏览器(Android)
Chrome
IE
Edge
Firefox
PC-Safari
√
√
√
√
√
√
√
√
√
✨ 特性
支持 Promise API
支持 Typescript 开发
拦截请求和响应
自定义配置请求实例
多种 Method 方法请求
支持 RequestTask 操作
🍟 文档
🥗 安装
插件市场
在插件市场右上角选择使用HBuilder X 导入插件或者下载插件ZIP。
NPM
# 如果您的项目是HBuilder X创建的,根目录又没有package.json文件的话,请先执行如下命令:
# npm init -y
# 安装
npm install uni-ajax
# 更新
npm update uni-ajax
🥐 实例
新建ajax.js文件(文件名可自定义)用于处理拦截器、接口根地址、默认配置等,详细配置请查看文档
// ajax.js
import ajax from 'uni-ajax' // 引入 uni-ajax 模块
const instance = ajax.create(config) // 创建请求实例
instance.interceptors.request.use(onFulfilled, onRejected) // 添加请求拦截器
instance.interceptors.response.use(onFulfilled, onRejected) // 添加响应拦截器
export default instance // 导出创建后的实例
然后在main.js引入该ajax.js
// main.js
import ajax from './common/ajax' // 路径需根据项目实际情况
Vue.prototype.$ajax = ajax // 挂载在 Vue 原型链上(通过 this.$ajax 调用)
🥪 使用
请求方法
// 常规方法
ajax()
// 请求方法别名
ajax.get()
ajax.post()
ajax.put()
ajax.delete()
RequestTask
const request = ajax() // 请求方法每项皆可
request.abort() // 中断请求任务
request.onHeadersReceived(callback) // 监听 HTTP Response Header 事件
request.offHeadersReceived(callback) // 取消监听 HTTP Response Header 事件
其他属性
ajax.baseURL // 获取配置的接口根地址 baseURL
ajax.origin // 根据配置的接口根地址获取源地址 origin