微信开发时断网重新加载的处理方法
发表时间:2025-10-01 来源:浏览器大全整理相关软件相关文章人气:
微信小程序,简称小程序,英文名Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。小程序是一种不用下载就能使用的应用,也是一项门槛非常高的创新,经过将近两年的发展,已经构造了新的小程序开发环境和开发者生态。
分析
微信小程序目前没有提供刷新API,所以要自己去记录当前操作,点击刷新重新执行一遍
效果

点击‘重新加载’重新加载页面
实现
由于做项目时,页面渲染离不开接口请求,所以我封装了一下wx.request来判断是否断网,及断网后记录本次请求
/**
* obj request请求参数
* cb requrst请求成功回掉
* page 当前page实例
**/
function wxRequest (obj, cb, page, type) {
var isOne = true
var cachFn = function () {
wx.request({
url: obj.url,
data: obj.data {},
method: obj.method 'GET',
success: function (res) {
cb.call(page, res)
if (!page.data.isNet) {
page.setData({
isNet: true
})
}
},
// fail执行时当断网处理
fail: function () {
// 防止fail 有时会执行两次,影响渲染
if (!isOne) {
return
}
page.setData({
isNet: false,
isRequested: false
})
// 记录本次请求,加载时,执行page实例的reloadFn即可
page.reloadFn = wxRequest(obj, cb, page, 1)
isOne = false
}
})
}
if (type) {
page.isRequested = true
}
return type ? cachFn : cachFn()
}
应用
let data = {
url: '',
data: {},
method: ''
}
wxTools.wxRequest(data, (res) => {
// 数据渲染
this.setData({})
}, this)
断网时,执行this.reloadFn就回重新上一次请求,isNet及判断是否断网
【相关推荐】
1. 微信小程序完整源码
2. 微信小程序demo:阳淘
以上就是微信开发时断网重新加载的解决方法的详细内容,更多请关注php中文网其它相关文章!
小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。