宝典官方文档:
https://developers.weixin.qq.com/miniprogram/dev/framework/MINA.html
今天开始深度学习编程语法,虽然大部分是拷贝官方文档,代码类都是我自己敲的,希望能自己敲一遍表格里的内容,熟悉一下操作
文件目录结构之前大概提高到,没有细说
先打开 app.js 文件
小程序 App打开 app.js 文件,会看到 App({...}) 函数
App() 函数用来注册一个小程序。接受一个 Object 参数,其指定小程序的生命周期回调等
【注意】:App() 必须在 app.js 中调用,必须调用且只能调用一次。不然会出现无法预期的后果
Object参数说明:
属性
类型
描述
触发时机
onLaunch
Function
生命周期回调一监听小程序初始化
小程序初始化完成时(全局只触发一次)
onShow
Function
生命周期回调一监听小程序显示
小程序启动,或从后台进入前台显示时
onHide
Function
生命周期回调一监听小程序隐藏
小程序从前台进入后台时
onError
Function
错误监听函数
小程序发生脚本错误,或者 api 调用失败时触发 ,会带上错误信息
onPageNotFound
Function
页面不存在监听函数
小程序要打开的页面不存在时触发,会带上页面信息回调该函数
其他
Any
开发者可以添加任意的函数或数据到 Object 参数中,用 this 可以访问
前台、后台定义:当用户点击左上角关闭,或者按了设备 Home 键离开微信(也就是返回手机桌面,没有退出微信),小程序并没有直接销毁,而是进入了后台;当再次进入微信或再次打开小程序,又会从后台进入前台。需要注意的是:只有当小程序进入后台一定时间,或者系统占用资源过高,才会真正被销毁
关闭小程序(基础库版本1.1.0开始支持):当用户从扫一扫 ,转发等入口(场景值(下面有介绍)为1007,1008,1011,1025)进入小程序,且没有置顶小程序的情况下推出,小程序会被销毁
小程序运行机制在基础库版本 1.4.0 有所改变:上一条关闭逻辑在新版已不适用
示例代码:
//提示:当在js文件中输入app会提示函数,直接回车会直接生产4个框架,快捷 App({ /** * 当小程序初始化完成时,会触发 onLaunch(全局只触发一次) */ onLaunch: function () { }, /** * 当小程序启动,或从后台进入前台显示,会触发 onShow */ onShow: function (options) { }, /** * 当小程序从前台进入后台,会触发 onHide */ onHide: function () { }, /** * 当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息 */ onError: function (msg) { } /** * 下面是自定义内容 */ globalData: 'I am global data' }) 详细介绍.js 文件中App({...})函数各参数上面提到的 5 个参数
onLaunch,onShow,onHide,onError,onPageNotFound
js 文件中App({...})函数参数 - onLaunch(Object)小程序初始化完成时触发,全局只触发一次
Object 参数说明:
字段
类型
说明
path
String
打开小程序的路径
query
Object
打开小程序的query
scene
Number
打开小程序的 场景值(下面有介绍)
shareTicket
String
shareTicket,详见 获取更多转发信息(下面有介绍)
referrerInfo
Object
当场景为由从另一个小程序或公众号或App打开时,返回此字段
referrerInfo.appId
String
来源小程序或公众号或App的 appId,详见下方说明
referrerInfo.extraData
Object
来源小程序传过来的数据,scene=1037或1038时支持