APP

APP()

APP()接受一个object作为参数,用来配置小程序的生命周期

参数说明

onLaunch() 监听小程序的初始化,只在小程序初始化完成时触发,全局只触发一次

onShow() 监听小程序的显示,当小程序启动或从后台进入前台时触发

onHide() 监听小程序隐藏,当小程序从前台进入后台时触发

onError() 监听小程序错误,当小程序发生js错误时触发

app.js
APP({
   onLaunch: function() { 
    // Do something initial when launch.
  },
  onShow: function() {
      // Do something when show.
  },
  onHide: function() {
      // Do something when hide.
  },
  globalData: 'I am global data'
})

前台,后台的定义

当用户点击左上角关闭,或者按了设备Home键离开钉钉时,小程序并不会直接销毁,而是进入了后台,当再次进入钉钉或再次打开小程序时,又会从后台进入前台。而且只有当小程序进入后台一定时间,或占用系统资源过高时,才会被真正的摧毁。

getApp()

钉钉小程序提供了全局的getApp()函数,可以获取到小程序实例,一般用在各个子页面之中获取顶层应用

other.js
var appInstance=getApp()
console.log(appInstance.globalData)//I am global data

注意:
1.App()必须在app.js里调用,且不能调用多次
2.不要在 App() 内定义的函数中调用 getApp(),使用 this 就可以拿到 app 实例。
3.不要在 onLaunch 里调用getCurrentPages(),这个时候 page 还没有生成。
4.通过 getApp() 获取实例之后,不要私自调用生命周期函数。

Page

生命周期函数

onLoad: 监听页面加载,一个页面只会调用一次,在这个过程中可以接收传递的参数

onReady: 监听页面初次渲染完成,一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互

onShow: 监听页面显示,每次打开页面都会调用,可以进行数据的更新

onHide: 监听页面隐藏,当navigateTo或底部tab切换时调用

onUnload: 监听页面的装卸,当redirect或navigateBack的时候调用

onPullDownRrefresh:监听用户下拉刷新事件,需要在config的window选项中开启enablePullDownRefres,当处理完数据刷新后,wx.stopPullDownRefresh可以停止当前页面的下拉刷新


//index.js
Page({
  data: {
    text: "This is page data."
  },
  onLoad: function(options) {
    // Do some initialize when page load.
  },
  onReady: function() {
    // Do something when page ready.
  },
  onShow: function() {
    // Do something when page show.
  },
  onHide: function() {
    // Do something when page hide.
  },
  onUnload: function() {
    // Do something when page close.
  },
  onPullDownRefresh: function() {
    // Do something when pull down
  },
  // Event handler.
  viewTap: function() {
    this.setData({
      text: 'Set some data for updating view.'
    })
  }
})

下图为整个页面生命周期的过程
生命周期.png

Last modification:October 19th, 2019 at 04:43 pm
如果觉得我的文章对你有用,请随意赞赏