pageload事件何时触发(微信小程序显示不出来)

一:前言小程序网络请求默认为异步请求,在appjs的onLaunch运行后进行异步请求时,程序不会停止,Page页已执行onload,我们希望onLaunch执行完后再执行onload。解决方法:定义回调函数//app.jsApp({onLaunch:function(){wx.request({url:’http://test.cn/lo…

大家好,又见面了,我是你们的朋友全栈君。

一:前言

小程序网络请求默认为异步请求,在appjs的onLaunch运行后进行异步请求时,程序不会停止,Page页已执行onload, 我们希望onLaunch执行完后再执行onload。

解决方法:定义回调函数

//app.js

App({
  onLaunch: function () {
    wx.request({
      url: 'http://test.cn/login', //仅为示例,并非真实的接口地址
      data: {},
      success: function(res) {
        this.globalData.checkLogin = true;
        //由于这里是网络请求,可能会在 Page.onLoad 之后才返回
        // 所以此处加入 callback 以防止这种情况
        if (this.checkLoginReadyCallback){
           this.checkLoginReadyCallback(res);
        }
      }
    })
  },
  globalData: {
    checkLogin: false
  }
})


//index.js
//获取应用实例
const app = getApp()

Page({
  data: {
    test: false
  },
  onLoad: function () {
    let that = this;
    //判断onLaunch是否执行完毕
    if (app.globalData.checkLogin){
      that.setData({
        test:true
      })
    }else{
      app.checkLoginReadyCallback = res => {
        that.setData({
          test:true
        })
      };
    }
  }
})

执行顺序:[App] onLaunch -> [Page] onLoad -> [App] onLaunch sucess callback-> [Page] onLoad

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/129710.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 基于Bootstrap的Metro风格模板

    基于Bootstrap的Metro风格模板这几天在看Bootstrap的一些书,这里整理一下书中的一些模板,方便以后使用。1.BootMetrohttp://www.guoxiaoming.com/bootmetro/2.Bootswatchhttp://bootswatch.com/3.MetroUICSS官网:http://metroui.org.ua/中文:http://www.bootcss.com/

    2022年10月29日
  • k8s基础知识_k8s快速入门

    k8s基础知识_k8s快速入门K8S的基础学习,欢迎来访

  • python 如何爬取王者荣耀全英雄皮肤

    python 如何爬取王者荣耀全英雄皮肤

  • ES6 模板字符串基本用法[通俗易懂]

    ES6 模板字符串基本用法[通俗易懂]1声明es6中引入新的声明字符串的方式[“]letstr=`es6模板字符串`;console.log(str,typeofstr);2内容中可以直接出现换行符例如letstr=`es6模板字符串`;但是在常用的单引号”双引号中””不可以换行3变量拼接letlove=”沈腾”;letout=love+”xxx是我认为最好的喜剧演员”;letout1=`{love}xxx是我认为最好的喜剧演员`;console.log(out.

  • 基于java springboot android安卓点餐外卖系统源码(毕设)「建议收藏」

    基于java springboot android安卓点餐外卖系统源码(毕设)「建议收藏」开发环境及工具:大等于jdk1.8,大于mysql5.5,idea(eclipse),AndroidStudio技术说明:springbootmybatisandroid代码注释齐全,没有多余代码,适合学习(毕设),二次开发,包含论文技术相关文档。功能介绍:用户端:登录注册首页显示轮播图,菜品分类,根据分类展示菜品(可带推荐算法),点击入购物车,然后点击结算,计入下单界面,可选择自取和配送(配送需选择地址);也可以点击菜品进入详情,详情展示菜品评价,可以点击下单订单展示个人订单信息(包含取消,支付,完

  • 理解面向对象的语言特点_面向对象的理解并举例

    理解面向对象的语言特点_面向对象的理解并举例前言:我们学习的javascript语言是一门面向对象的语言,所以这一概念我们需要理解与认识!下面是理解性的理论内容,不需要记忆,理解与思考我们的学习才能站在更高的视角!一、认识:面向对象是当今主

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号