• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >微信小程序 > 微信开发时断网重新加载的解决方法

微信开发时断网重新加载的解决方法

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2018-11-30

匿名通过本文主要向大家介绍了微信开发,断网重新加载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

分析

微信小程序目前没有提供刷新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:阳淘

以上就是微信开发时断网重新加载的解决方法的详细内容,更多请关注微课江湖其它相关文章!

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 微信小程序开发:在Gulp的基础上构建的工作流程
  • 微信小程序开发:企业开发小程序的必要性
  • 微信小程序开发之页面跳转方式
  • 微信小程序开发之animation动画实现
  • 关于微信开发小程序的一点个人总结
  • 开发微信服务器接口的实例教程
  • 微信开发之录音功能
  • 微信开发之开发者模式
  • 微信公众平台开发之小黄鸡API
  • 小程序开发不可或缺的Flex布局模式

相关文章

  • 2018-11-30如何通过微信小程序获取用户手机号
  • 2018-11-30微信小程序Tab页切换更新数据详细介绍
  • 2018-11-30微信小程序的火车票查询的代码
  • 2018-11-30微信小程序 toast 详解及实例代码
  • 2018-11-30有关合法域名配置的课程推荐
  • 2017-06-20微信小程序版百思不得姐 demo代码
  • 2018-11-30微信小程序常见问题官方FAQ
  • 2018-11-30详解微信小程序框架详解及实例应用
  • 2018-11-30js中关于el表达式的使用方法
  • 2018-11-30微信小程序Flex布局

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 微信小程序消息推送php服务器验证
    • 介绍小程序中传递参数的实现方法
    • 图文详解微信小程序中调用录音功能和音频播放的方法
    • PHP和Ajax实现文章添加类别功能
    • wxss字体组件及API的思维导图详细介绍
    • 微信小程序 progress组件详细介绍
    • 微信小程序中UI与容器组件的介绍
    • 关于微信小程序进行微信支付的步骤
    • 微信小程序0.11.122100 版本更新详情介绍
    • 微信小程序聊天室demo代码

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有