(一)应用的生命周期

//app.js
App({
 // 1 应用第一次启动就会触发的事件
 onLaunch(){
   // 在应用第一次启动时,获取用户的个人信息
   console.log("onLaunch");
 },

 // 2 应用被用户看到时触发
 onShow(){
   // 对应用的数据或者页面效果重置
   console.log("onShow");
 },

 // 3 应用被隐藏时触发
 onHide(){
   // 暂停或清除定时器
   console.log("Hide");
 },

 // 4 当应用的代码发生报错时就会触发
 onError(err){
   // 在应用发生代码报错的时候,收集用户的错误信息,通过异步请求,将错误信息发送到后台
   console.log("onError");
 },

 // 5 页面找不到时触发
 // 应用第一次启动的时候,如果找不到第一个入口页面,才会触发
 onPageNotFound(){
   // 如果页面不存在了,可以通过js的方式来重新跳转页面,重新跳到第二个首页
   // 不能跳到tabbar页面 导航组件类似
   wx.wx.navigateTo({
     url: '/pages/demo/demo',     
   });
 }
})

(二)页面的生命周期

// pages/demo/demo.js
Page({

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

  },

  /**
   * 生命周期函数--监听页面加载
   * onLoad发送异步请求来初始化页面数据
   */
  onLoad: function (options) {

  },

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

  },

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

  },

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

  },

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

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

 /**
   * 页面滚动时触发
   */ 
  onPageScroll:function(){

  },

  /**
   * 页面的尺寸发生改变的时候触发
   * 小程序发生了横屏竖屏切换的时候触发
   */
  onResize:function(){

  },

  /**
   *必须要求当前页面是tabbar页面
   *点击自己的tab item的时候才触发
   */
  onTabItemTap:function(){

  },
})