无名阁,只为技术而生。流水不争先,争的是滔滔不绝。

(onready) 小程序页面onload(),onready()加载顺序详解 生命周期函数:Page onLoad和onReady 全网首发(图文详解1)

前沿技术 Micheal 3个月前 (06-07) 66次浏览 已收录 扫描二维码

(onready) 小程序页面onload(),onready()加载顺序详解

小程序页面的onLoad(), onReady()是小程序页面生命周期函数中的一部分,它们定义了页面加载的不同阶段以及在各个阶段可以执行的操作。

  • onLoad()函数:
    • 触发时机:页面加载时触发,一个页面只会调用一次,可以在这个函数中获取打开当前页面所调用的query参数。
    • 使用场景:进行页面初始化、获取传递过来的数据等。
  • onReady()函数:
    • 触发时机:页面初次渲染完成时触发,一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
    • 使用场景:进行页面的布局渲染,或者通过wx.createSelectorQuery()等API来操作节点。

加载顺序:

一般情况下,onLoad()会先于onReady()执行。即先进行页面加载,然后当页面渲染布局完成后,才会触发onReady()函数。

具体的流程和解决方案如下所示:

  • 生成页面时,在页面的.js文件中定义onLoad()onReady()函数:
// page.js

Page({
  // 当页面加载时触发
  onLoad: function(options) {
    // options 包含了页面跳转传递过来的参数,可以在此处理
    console.log('页面加载时执行onLoad', options);
    // 进行一些初始化工作,比如API调用,数据初始化等
  },

  // 当页面初次渲染完成时触发
  onReady: function() {
    console.log('页面初次渲染完成时执行onReady');
    // 页面布局渲染完成,可以进行DOM操作,渲染数据等
  }
})
  • onLoad()中可以进行如下操作:
    • 接收跳转参数,进行页面初始化。
    • 发起网络请求,获取页面需要的初始数据。
    • 设置页面标题,wx.setNavigationBarTitle()
  • onReady()中可以进行如下操作:
    • 获取Dom节点信息,wx.createSelectorQuery()
    • 处理动画,数据绑定更新等。

需要注意的是,由于onReady()是在页面初次渲染完成之后才调用,所以如果在onLoad()中通过网络请求获取数据,并且这些数据需要在页面初次渲染时显示,那么可能会导致页面在数据到达前先显示无数据的状态,解决这一问题可以通过在onLoad()中设置合适的加载状态来进行用户提示,例如加载动画等。

以上便是小程序页面onLoad(), onReady()的详解、使用方法及其加载顺序的详细解答。在编写代码时,应依照小程序的官方文档来进行合适的函数使用与规划。
(网格线) Matplotlib grid()设置网格格式使用方法详解 matplotlib网格设置 全网首发(图文详解1)
(vstack) 详解Numpy dstack()(深度堆叠数组)函数的作用与使用方法 Numpy中的dstack函数:深度数组操作 全网首发(图文详解1)

喜欢 (0)
[]
分享 (0)
关于作者:
流水不争先,争的是滔滔不绝