「小程序JAVA实战」 小程序默认加载的页面和生命周期(八)

转自:https://idig8.com/2018/08/09/xiaochengxu-chuji-08/

小程序如何加载的呢?生命周期!源码:https://github.com/limingios/wxProgram.git 中的No.3

加载页面
  • 小程序默认加载的pages中的第一个目录

不管你的名称,只管你的顺序

image.png

  • 其他目录需要通过触发才能加载
生命周期

相关的框架的时候都有生命周期的概念,通过了解生命周期更好的把控框架的使用!

  • onLaunch

    第一次打开小程序的初始化,也被调用一次。

  • onShow

    随着第一次onLaunch的时候触发,小程序打开前台展现。

  • onHide

    小程序从前台到后台的转变,就是隐藏到后台去了。

场景:在用手机上使用微信,这时候点击手机的home键,微信就退入后台去,触发onHide事件,我们双击home键,把任务管理器打开,显示出来微信,这时候就触发onShow事件,

  • onError

    小程序出现错误的时候,就在这了抛出来,有点像java开发的exception。

  • 其他

    小程序提供给开发者定义一些参数,数字对象或者是函数,可以通过私有的js进行调用。可能不太理解吧,以后会讲清楚的。

  • 官网最靠谱:https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/app.html

     

技术分享图片

演示微信小程序的生命周期
  • 修改app.js
//app.jsApp({ onLaunch: function (options) { console.log("onLaunch") }, onShow: function (options) { console.log("onShow") }, onHide: function () { console.log("onHide") }, onError: function (msg) { console.log("onError") }, globalData: ‘I am global data‘})
  • 编译
    > console.log打印了onLaunch 和 onShow

image.png

  • 全部对象的调用方式
    >test.js 和 test.wxml ,test.js先初始化获取全局实例,通过全局实例获取到全局变量,将全局变量赋值给页面数据上motto上。test.wxml是通过数据绑定的方式获取motto的值。
//test.jsPage({ data: { motto: ‘Hello World‘, userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse(‘button.open-type.getUserInfo‘) }, onLoad: function () { //获取应用实例 const app = getApp(); //获取应用实例里面的全局变量 console.log(app.globalData); this.setData({ //全局变量赋值给页面的变量 motto:app.globalData }) }})
<!--test.wxml--><view class="container">{{motto}}</view>

技术分享图片

PS:小程序的默认加载,小程序的生命周期,小程序的全局对象调用。

相关文章