"networkTimeout": {
"request": 6000,
"downloadFile": 10000
},
一、在onLaunch运行任务如果超时,我把错误级别定为0,并转向错误页面
wx.login({
success(res) {if(res.code) {//console.log(res.code);//发起网络请求
wx.request({
url:'https://**/index/zz/getuserinfo',
data: {
code: res.code
},
success: res=>{wx.setStorageSync('open_id', res.data.openid);
wx.setStorageSync('session_id', res.data.session_id);
wx.setStorageSync('session_key', res.data.session_key);
that.globalData.isSessionkey=true;//console.log(res.data);
if(that.sessionCallback) {
that.sessionCallback(res);
}
},fail:f=>{
wx.showModal({
title:'提示',
showCancel:false,
content:'可能网络不太好,请重试!',
success: function () {
wx.navigateTo({
url:'/pages/reload?error=0'});
}
});
}
})
}else{
console.log('登录失败!' +res.errMsg)
}
}, fail: function () {
wx.showModal({
title:'提示',
showCancel:false,
content:'可能网络不太好,请重试!',
success: function () {
wx.navigateTo({
url:'/pages/reload?error=0'});
}
});
}
});
二、如果是页面请求超时,我把错误定为2,可以通过重试来修复
wx.request({
url: webUrl + model.url,
data: model.param,
method: model.method,
success: function (res) {
},
fail: function (res) {
wx.hideLoading();
wx.showModal({
title: '提示',
showCancel: false,
content: '可能网络不太好,请重试!',
success: function () {
wx.navigateTo({
url: '/pages/reload?error=1'
});
}
});
}
})
三、处理页面:要使用getCurrentPages()获取上一页对象,必须使用wx.navigateTo转向此页
/**
* 页面的初始数据
*/
data: {
error:0 // 0:需要退出小程序 1:可以重新发起网络请求重试
},
reLoad:function(error)
{
var pages = getCurrentPages();//获取页面栈
if (pages.length > 1) {
//上一个页面实例对象
var prePage = pages[pages.length - 2];
let url=prePage.route;
var options = prePage.options //如果要获取url中所带的参数可以查看options
console.log('options', options);
//拼接url的参数
var urlWithArgs = url + '?'
for (var key in options) {
var value = options[key]
urlWithArgs += key + '=' + value + '&'
}
urlWithArgs = urlWithArgs.substring(0, urlWithArgs.length - 1)
wx.reLaunch({
url: '/' + urlWithArgs,
fail:function(e)
{
wx.switchTab({
url: '/' + prePage.route,
})
}
});
}
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({ error: options.error});
// this.reLoad(options.error);
},
页面wxml
重新加载
退出重试