微信小程序的生命周期

微信小程序的逻辑层主要包括:小程序的初始化过程和页面的初始化过程。微信小程序使用了App和Page方法进行程序和页面的注册,使用getApp()方法来获取App()实例。

  一、小程序的初始化:

    小程序的注册和初始化是通过App( )函数进行的,App( )注册小程序时接受一个object参数,指定小程序的生命周期。

    object参数说明:

属性类型描述触发时机
onLaunch Function 生命周期函数--监听小程序初始化 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
onShow Function 生命周期函数--监听小程序显示 当小程序启动,或从后台进入前台显示,会触发 onShow
onHide Function 生命周期函数--监听小程序隐藏 当小程序从前台进入后台,会触发 onHide

 

 

 
 
    前台、后台定义: 当用户点击左上角关闭,或者按了设备 Home 键离开微信,小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。

 

1
2
3
4
5
6
7
8
9
10
11
App({
  onLaunch: function() {
    // Do something initial when launch.<br>  //当小程序初始化完成时,触发这个函数;
  },
  onShow: function() {
      // Do something when show.<br>  //当小程序启动,或从后台进入前台显示,触发这个函数;
  },
  onHide: function() {
      // Do something when hide.<br>  //当小程序从前台进入后台,触发这个函数
  }
})

      小程序框架提供了一个全局的getApp()函数,可以获取到小程序实例。App()必须且只能在根目录的app.js文件中注册,而且只能注册一个。在App()函数内需要使用App实例时,只要使用this关键则就可以达到目的。

1
2
3
//index.js
var appInfo = getApp()
console.log(appInfo .appName)

    二、页面注册:

      按照如下表中的顺序进行执行:

 

属性 类型 描述
data Object
页面的初始数据
onLoad Function
生命周期函数--监听页面加载
onShow Function 生命周期函数--监听页面显示
onReady Function
生命周期函数--监听页面初次渲染完成
onHide Function
生命周期函数--监听页面隐藏
onUnload Function 生命周期函数--监听页面卸载
onPullDownRefresh Function 页面相关事件函数--监听用户下拉动作
onReachBottom Function 页面上拉触底事件的处理函数
其他  Any   开发者添加的任意的函数或数据
1
2
3
4
Page({  //页面方法执行顺序
onLoad: function (options) {
  console.log("page ---onLoad---");
},
1
//只在页面加载时执行一次,接收页面参数可以获得wx.navigateTo和wx.redirectTo事件以及<navigator/>中的query事件;
1
onShow: function () { console.log("page ---onShow---"); },
1
//在页面初次渲染完成时调用,每一个页面只会调用一次,代表页面已经准备好,可以和视图层进行数据交互,对界面的设置如wx.setNavigationBarTitle函数等可以在onReady之后设置。<br><br>//onReady函数只监听第一次完成渲染时的状态。
1
onReady: function () { console.log("page ---onReady---"); },
1
2
3
4
5
6
7
8
//在页面显示时调用,每次打开页面都会调用一次;
  onHide: function () {
    console.log("page ---onHide---");
  },<br>//在页面隐藏时调用,当页面进行navigateTo页面导航或者用户通过操作底部导航按钮切换到其他页面时被调用;
  onUnload: function () {
    console.log("page ---onUnload---");
  }<br>//页面卸载时调用,即页面执行redirectTo或navigateBack操作时调用。
})

下拉刷新的使用:

  用onPullDownRefresh属性来监听用户下拉刷新事件时,需事先在app.json的window配置中开启enablePullDownRefresh选项。当处理完数据刷新事件后,可以用wx.stopPullDownRefresh()函数停止页面的下拉刷新。

posted @ 2020-04-06 14:42  天涯海角路  阅读(301)  评论(0)    收藏  举报