taro项目--使用axios
基于axios支持自定义适配器,只需要针对不同环境下的http请求api进行适配进行替换,axios可以使用在任意平台。由于axios在其他项目中大量使用,本项目实现Taro框架下的适配器,可以在Taroa项目中完美使用原汁原味的axios,统一团队前端技术栈,统一http请求类库。采用此方式对项目零侵入,开发者专注于axios的api即可。git clone。
·
axios-taro-adapter
基于axios
支持自定义适配器,只需要针对不同环境下的http请求api进行适配进行替换,axios
可以使用在任意平台。
由于axios
在其他项目中大量使用,本项目实现Taro
框架下的适配器,可以在Taroa
项目中完美使用原汁原味的axios
,统一团队前端技术栈,统一http请求类库。
采用此方式对项目零侵入,开发者专注于axios
的api即可。
git clone GitHub - SpringHgui/axios-taro-adapter: axios adaptor for taro.request
GitHub - SpringHgui/axios-taro-adapter: axios adaptor for taro.request
Quick start
npm i axios@0.27.2
npm i axios-taro-adapter
- create axios instance
仅需2行代码,完美使用axios
替换Taro.request
// api.js import axios from "axios"; import { TaroAdapter } from "axios-taro-adapter"; const API_URL = "https://api.xxxx.com/"; const instance = axios.create({ baseURL: API_URL, timeout: 10000, adapter: TaroAdapter, // add this line,添加这一行使用taroAdapter }); export const postData = data => { return instance.post("/api/test", data); }
例如: 原汁原味的拦截器
// interceptors for request instance.interceptors.request.use( function (config) { return config; }, function (error) { return Promise.reject(error); } ); // interceptors for response instance.interceptors.response.use( function (response) { if (response.data.code !== 0) { return Promise.reject(response.data); } else { return response.data; } }, function (error) { return Promise.reject(error.message); } );
更多推荐
已为社区贡献1条内容
所有评论(0)