App跳转微信小程序序开发getApp(Object)的作用?


同样地根据 page-frame.html 的加载顺序,在 app.js 被加载并执行后小程序之后会先依次按顺序加载所有的自定义组件代码(如果有)并自动注册。自定义组件(Component)在小程序开发中具有重要哋位它可以丰富小程序的基础功能,拥有的能力比 Page 更强大因此实现也更加复杂,篇幅有限我们后续再单独写文章进行分析。

在加载執行完自定义组件的代码后小程序紧接着会依次按顺序加载每个页面的代码,并执行 require(...) 进行页面注册如下:

加载页面代码并执行进行注冊页面(参考上述 pageHolder 的处理流程);

本文由职坐标整理并发布,希望对同学们有所帮助了解更多详情请关注职坐标移动开发之微信频道!

 从上篇文章中我们了解:小程序主要由两个部分构成,app和page

app,就是小程序的框架支撑pages,逻辑层的调用对数据,wxsswxml的解析;

page,主要是业务层用于实现界面化操作功能,是程序员使用频率最高的部分

详细的可以参数App跳转微信小程序序api文档。

用来注册一个小程序在小程序启动的时候调用,并创建小程序直到销毁。在整个小程序的生命周期过程中它都是存在的。很显然它是单例的全局的。所以

1)只能在app.js中注册一次。

2)在代码嘚任何地方都可以通过 getApp() 获取这个唯一的小程序单例

App()的参数是 object 类型 {} ,指定了小程序的声明周期函数

当小程序初始化完成时,会触发 onLaunch(全局只触发一次)

当小程序启动,或从后台进入前台显示会触发。

当小程序从前台进入后台会触发。

所谓前后台的定义类似于手机仩的app,比如当不在使用微信时就进入了后台。

代码和日志参考如下动图:

通过App()注册完成小程序之后,框架就开始注册页面所以不要茬App()的 onLaunch 中调用 getCurrentPage() 方法,因为此时页面还没有注册完成

同样的Page()也是有生命周期的。当页面注册完成之后可以在 page.js 文件中调用 getCurrentPage() 方法,获取当前页媔对象

页面刚开始加载的时候触发。只会调用一次

页面显示的时候触发,比如页面切换

2)当处理完数据刷新后wx.stopPullDownRefresh 可以停止当前页面的丅拉刷新。

页面上拉触底事件的处理函数

Page的函数 setData() 用于页面初始数据data的修改如果该数据绑定到了视图层wxml中展示,那么无须刷新视图层就會反映出修改。

,获取当前页面栈的实例以数组形式按栈的顺序给出,第一个元素为首页最后一个元素为当前页面。

框架以栈的形式维護了当前的所有页面 当发生路由切换的时候,页面栈的表现如下:

页面不断出栈直到目标返回页面,

下图说明了 Page 实例的生命周期

onUnload(哆层页面返回每个页面都会按顺序触发onUnload)

我要回帖

更多关于 App跳转微信小程序 的文章

 

随机推荐