微信小程序的生命周期实例演示 —— 微信小程序教程系列(2)

本文详细解析了微信小程序的生命周期,包括App和Page两级的生命周期函数,如onLaunch、onShow、onHide、onError以及onLoad、onReady、onShow、onHide、onUnload等,阐述了它们的触发条件及执行顺序。

微信小程序的生命周期函数有2个

一个是App的生命周期

另一个是Page的生命周期

App的生命周期

19956127-52043359b38093bc.png

示例:演示App的生命周期函数

app.js:
App({
  onLaunch: function () {
    console.log("App生命周期函数——onLaunch函数");
  },
  onShow: function () {
    console.log("App生命周期函数——onShow函数");
  },
  onHide: function () {
    console.log("App生命周期函数——onHide函数");
  },
  onError: function (msg) {
    console.log("App生命周期函数——onError函数");
  }
})

运行:
(1)程序启动时,会触发以下2个函数
第一执行onLauch函数——当小程序初始化完成时,会触发 onLaunch(全局只触发一次)
第二执行onShow函数——当小程序启动,或从后台进入前台显示,会触发 onShow


19956127-b7c4604f54ae0e0b.png

(2)当点击“后台”时,会触发以下函数(即程序被转到后台时)
onHide函数——当小程序从前台进入后台,会触发 onHide


19956127-dfc81d5e785ccd2d.png

当点击“前台”时,就会再次触发onShow函数


19956127-3b6428b63722cfbd.png

Page的生命周期

19956127-e5330d43847b5e5c.png

示例: 演示Page的生命周期函数

home.js:
Page({
  data:{ },
  onLoad:function(options){
// 生命周期函数--监听页面加载
console.log("Page onLoad函数");
  },
  onReady:function(){
// 生命周期函数--监听页面初次渲染完成
console.log("Page onReady函数");
  },
  onShow:function(){
// 生命周期函数--监听页面显示
console.log("Page onShow函数");
  },
  onHide:function(){
// 生命周期函数--监听页面隐藏
console.log("Page onHide函数");
  }

})

运行:
(1)
当启动home页面时,会触发以下3个函数
第一执行onLoad函数——在文档加载的时候会执行
第二执行onShow函数——在页面显示的时候会执行
第三执行onReady函数——在页面初次渲染完成时执行


19956127-8e188bec8ade87f9.png

(2)在Home页面时,当点击左上角“返回”,会触发以下函数
onUnload函数——在页面销毁时执行
Page Onload 函数
(3)在Home页面时,当点击“后台”时,会触发以下函数(即程序被转到后台时)
onHide函数——在页面隐藏时会执行


19956127-b384272e2fa569ea.png

(4)在Home页面时,当点击“前台”时,会触发以下函数(即程序从后台被重新转回前台时)
onShow函数——在页面显示时会执行
19956127-ce8d123286a949b8.png

示例:演示App生命周期函数和Page生命周期函数的结合使用

app.js:

在app.js文件添加以下几个生命周期函数

App({

  onLaunch: function () {

    console.log("App生命周期函数——onLaunch函数");

  },

  onShow: function () {

    console.log("App生命周期函数——onShow函数");

  },

  onHide: function () {

    console.log("App生命周期函数——onHide函数");

  },

  onError: function (msg) {

    console.log("App生命周期函数——onError函数");

  }

})

index.js:

在index.js文件添加以下几个生命周期函数

Page({

  data:{ },

  onLoad:function(options){

// 生命周期函数--监听页面加载

console.log("Page onLoad函数");

  },

  onReady:function(){

// 生命周期函数--监听页面初次渲染完成

console.log("Page onReady函数");

  },

  onShow:function(){

// 生命周期函数--监听页面显示

console.log("Page onShow函数");

  },

  onHide:function(){

// 生命周期函数--监听页面隐藏

console.log("Page onHide函数");

  },

  onUnload:function(){

// 生命周期函数--监听页面卸载

console.log("Page onUnload函数");

  }

})

运行:

(1)程序启动时

首先执行的是App的生命周期函数

接着再执行Page的生命周期函数


19956127-f089498734b9b06f.png

(2)当点击“后台”时,会触发以下函数(即程序被转到后台时)

首先执行Page的onHide生命周期函数

再执行App的onHide生命周期函数


19956127-36a2d3012af948d2.png

(3)当点击“前台”时(即程序返回前台时)

首先执行Page的onShow生命周期函数

再执行App的onShow生命周期函数

19956127-867daec5bc27ccd0.png

原文作者:michael_ouyang
原文链接: https://blog.youkuaiyun.com/michael_ouyang/article/details/54891783

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值