微信小程序生命周期适应的场景

1,764 阅读1分钟

一、onLoad

  • 页面加载时执行的初始化操作
  • 一个页面只会调用一次
  • 参数可以获取wx.navigateTo 和 wx.redirectTo 以及标签中的query
 let showReserveTimesBar = true
 wx.navigateTo({
    url: '/pages/chooseDate/chooseDate?showReserveTimesBar=' + showReserveTimesBar
 })
  onLoad: function (options) {
    console.log(options.showReserveTimesBar)
  },

二、onReady

  • 一个页面只会调用一次
  • 代表页面已经准备妥当,可以和视图层进行交互
  • 对页面的设置(比如:wx.setNavigationBarTitle)请在onReady之后设置

三、onShow

  • 页面显示时执行的操作
  • 每次打开页面都会调用一次

四、onHide

  • 是页面隐藏时的执行的操作
  • 可以在navigateTo 或底部进行tab切换时进行调用
  • 在退出页面时可以关闭定时器

五、onUnload

  • tab 页面之间的切换,不会让页面重新加载;也就不会卸载,只会隐藏与显示
  • 在进行navigatorTo 跳转到目标页面会被加载;跳转之前的页面会被隐藏;
  • 回退时navigatorBack,目标页面会显示(而不是加载)回退之前的页面会被卸载(unload)
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  }
})