更新记录

0.8.1-beta(2024-02-27)

更新README.md中的错误

0.8.0-beta(2024-02-27)

项目开发过程中发现以前使用的大佬的 uni-app 移植版 Axios 方案不是很好用了,所以自己花了 28 个小时造了个新轮子。

  • 支持多文件上传。

  • 支持 FromData 。

  • 支持绝大部分 Axios.js 的特性。

  • 支持非 uni-app 项目,使用体验基本一致。

  • 从只能 uploadFile 和不能 Content-Type: multipart/form-data 的苦海中解脱。

  • 需要各位大佬积极帮忙测试,反馈与 Axios 表现不一致的地方。后面有时间上传 GitHub 一起维护。

  • 已有示例工程但未优化,暂时不放出。

  • HBuilderX和cli的最低兼容版本是瞎写的。


平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
× × × × × ×
钉钉小程序 快手小程序 飞书小程序 京东小程序
× × × ×
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

Vue Axios HTTP

Axios 是一个基于 promise 的网络请求库,可以用于浏览器和 node.js,Vue Axios HTTP 成功将其移植到 uni-app 并制作成同时兼容 Vue 2 、Vue 3 的 Vue 插件。 Axios 使用简单,包尺寸小且提供了易于扩展的接口。

使用方式

1. 安装 Vue Axios HTTP

从 NPM 仓库安装

即将支持

从 DCloud 插件市场 仓库安装

  1. 从 DCloud 插件市场搜索:Vue Axios HTTP
  2. 下载插件并导入 HBuilderX

2. 将 Vue Axios HTTP 导入项目

普通 Vue 项目

  • Vue 2
import VueAxiosHTTP from "vue-axios-http";
import Vue from "vue";
const axiosConfigs = {
  baseURL: "https://example.com/",
};
Vue.use(VueAxiosHTTP, axiosConfigs);
  • Vue 3
import VueAxiosHTTP from "vue-axios-http";
import { createSSRApp } from "vue";
const axiosConfigs = {
  baseURL: "https://example.com/",
};
export function createApp() {
  const app = createSSRApp(App);
  app.use(VueAxiosHTTP, axiosConfigs);
  return {
    app,
  };
}

uni-app

main.js 引入。

import App from "./App";

import VueAxiosHTTP from "./uni_modules/axios-http";

const axiosConfigs = {
  baseURL: "https://example.com/",
};

// #ifndef VUE3
import Vue from "vue";
import "./uni.promisify.adaptor";
Vue.config.productionTip = false;
App.mpType = "app";
Vue.use(VueAxiosHTTP, axiosConfigs);
const app = new Vue({
  ...App,
});
app.$mount();
// #endif

// #ifdef VUE3
import { createSSRApp } from "vue";
export function createApp() {
  const app = createSSRApp(App);
  app.use(VueAxiosHTTP, axiosConfigs);
  return {
    app,
  };
}
// #endif

Nuxt.js

即将支持。

3. 在项目中使用 Vue Axios HTTP

在 Vue 2 与 Vue 3 的 选项式 API 中使用

const request1: Promise = this.$axios(config);
const request2: Promise = this.$axios.get(config);
const request3: Promise = this.$axios.get(url, data);
const request3: Promise = this.$axios.get(url, data, config);
const request4: Promise = this.$axios.post(config);
const request5: Promise = this.$axios.post(url, data);
const request6: Promise = this.$axios.post(url, data, config);
// 更多用法见 Axios 官方文档。

Vue 3 的 组合式 API 中使用

即将支持。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问