开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第7天,点击查看活动详情
这周末基本就是玩了,没学习心得知识,只是对小程序的知识做了简单的复习,主要是小程序的逻辑层,主要涉及到了如何注册小程序,即全局调用App()方法,还有单独页面的逻辑层调用Page()方法,下面给大家做详细介绍。
注册小程序
每个小程序的app.js文件中都有且只有一个app()方法,该方法注册出全局唯一一个小程序实例,yo通过getApp()获取该实例。
在 JavaScript 的基础上,小程序增加了一些功能,以方便小程序的开发:
注册小程序。接受一个 Object 参数,其指定小程序的生命周期回调等。
App() 必须在 app.js 中调用,必须调用且只能调用一次。不然会出现无法预期的后果。
- 增加
App和Page方法,进行程序注册。 - 增加
getApp和getCurrentPages方法,分别用来获取App实例和当前页面栈。 - 提供丰富的
API,如微信用户数据,扫一扫,支付等微信特有能力。 - 提供模块化能力,每个页面有独立的作用域。微信小程序的作用域按页面进行划分的,每个页面是一个作用域。
onLaunch(Object object)g那个
只小程序初始化时触发一次
onShow(Object object)
初始化化时触发一次,其他时候也可能会触发。每次从后台进入前台时显示,会触发
onHide()
小程序从前台进入到后台时触发
onError(String error)
小程序发生脚本错误或 API 调用报错时触发。也可以使用 wx.onError 绑定监听
onPageNotFound(Object object)
小程序要打开的页面不存在时触发。
onUnhandledRejection(Object object)
小程序有未处理的 Promise 拒绝时触发。
onThemeChange(Object object)
系统切换主题时触发
globalData
作用:该属性存储全局数据
注册页面
以下配置都在Page(Object)方法里进行配置
data属性
是第一次渲染时初始化的数据,在模板里直接使用定义好的变量即可。
onLoad()
页面打开时触发一次,执行完成之后,会保存到缓存中,再次进入该页面,会读取缓存。
onShow()
页面显示/切入前台时触发。会执行多次。
onReady()
- 页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互。
- 该生命周期可以理解为真实DOM已经渲染完成,可以操纵页面。大多控制一些渲染层的接口。
onHide()
页面隐藏/切入后台时触发。执行多次。
onUnload()
页面卸载时触发。如wx.redirectTo或wx.navigateBack到其他页面时。钱买你这两个方法会把缓存的生命周期进行卸载,导致onUnload()触发。
以上呢,就是全局的js逻辑层和单独页面的逻辑层钩子函数,希望能对小伙伴们有帮助。