fly简介
微信小程序的 javascript运行环境和浏览器不同,页面的脚本逻辑是在JsCore中运行,JsCore是一个没有窗口对象的环境,所以不能在脚本中使用window,也无法在脚本中操作组件,JsCore中也没有 XmlhttpRequest对象,所以jquery 、zepto、axios这些在小程序中都不能用,而此时,正是 fly 大显身手的时候。
详细API,移步官方文档: flyio帮助文档.
使用步骤
- 从官网下载wx.umd.min.js或者wx.js文件,保存在项目中。不建议使用cdn链接,防止链接失效。
- 封装一个fly请求
import Fly from './wx.umd.min.js';
// 将一些全局变量存在app实例的globalData中
const app = getApp();
const baseApiUrl = app.globalData.baseApiUrl;
const application = app.globalData.application;
// 定义一些接口状态码需要提示的文案,用作错误提示
const statusText = {
0: '网络连接异常',
1: '网络连接超时',
401: '用户未登录',
403: '无权限访问该资源',
404: '资源不存在',
405: '请求方法不允许',
500: '网络异常,请检查网络',
503: '服务不可用',
504: '网关超时'
};
const fly = new Fly();
// 统一配置请求baseUrl
fly.config.baseURL = baseApiUrl;
// 统一配置超时时间
fly.config.timeout = 5000;
// 请求拦截,在这里面做一些个性化配置
fly.interceptors.request.