这么搞吧!已经在项目中使用了
// #ifdef APP-PLUS
import Fly from 'flyio/dist/npm/wx'
// #endif
// #ifdef MP-WEIXIN
import Fly from 'flyio/dist/npm/wx'
// #endif
const request = new Fly()
const errorPrompt = (err) => {
// #ifdef MP-WEIXIN
wx.showToast({
title: err.message || 'fetch data error.',
icon: 'none'
})
// #endif
// #ifdef APP-PLUS
uni.showToast({
title: err.message || 'fetch data error.',
icon: 'none'
})
// #endif
}
request.interceptors.request.use((request) => {
// wx.showNavigationBarLoading()
uni.showLoading({
title: '加载中'
});
return request
})
request.interceptors.response.use((response, promise) => {
// wx.hideNavigationBarLoading()
uni.hideLoading();
// if (!(response && response.data && response.data.res === 0)) {
// errorPrompt(response)
// }
return promise.resolve(response.data)
}, (err, promise) => {
// wx.hideNavigationBarLoading()
uni.hideLoading();
errorPrompt(err)
return promise.reject(err)
})
export default request
原文:https://blog.csdn.net/haoyuexihuai/article/details/86590587
9 个回复
1***@163.com
兼容app吗
Neil_HL
拦截器只能自己封装,uni-app仅提供网络请求的方法和中断连接的方法;
我们内置了flyio(https://wendux.github.io/dist/#/doc/flyio/readme),使用时用wx,如下示例:
liuxmoo
其他 api 的封装呢?
2019-04-05 21:01
7***@qq.com
flyio 自带请求拦截设置,你可以看看它的文档
互帮互助
这么搞吧!已经在项目中使用了
// #ifdef APP-PLUS
import Fly from 'flyio/dist/npm/wx'
// #endif
// #ifdef MP-WEIXIN
import Fly from 'flyio/dist/npm/wx'
// #endif
const request = new Fly()
const errorPrompt = (err) => {
// #ifdef MP-WEIXIN
wx.showToast({
title: err.message || 'fetch data error.',
icon: 'none'
})
// #endif
// #ifdef APP-PLUS
uni.showToast({
title: err.message || 'fetch data error.',
icon: 'none'
})
// #endif
}
request.interceptors.request.use((request) => {
// wx.showNavigationBarLoading()
uni.showLoading({
title: '加载中'
});
return request
})
request.interceptors.response.use((response, promise) => {
// wx.hideNavigationBarLoading()
uni.hideLoading();
// if (!(response && response.data && response.data.res === 0)) {
// errorPrompt(response)
// }
return promise.resolve(response.data)
}, (err, promise) => {
// wx.hideNavigationBarLoading()
uni.hideLoading();
})
export default request
原文:https://blog.csdn.net/haoyuexihuai/article/details/86590587
liuxmoo
uni-app 有对 其他的 api 进行 promise 封装么
hhyang - 如有问题,请添加QQ1606726660 备注付费咨询
这里有封装好的请求 支持拦截 点我查看
樱桃也疯狂 - 我不是搬码工,我不会武功
https://blog.csdn.net/qq_42618566/article/details/109308690
w***@foxmail.com - 全栈工程师
axios 都不支持?
Neil_HL
不支持
2018-12-06 19:51
4***@qq.com
兼容性呢?