小程序的启动流程
注册小程序 – 参数解析
每个小程序都需要在 app.js 中调用 App 方法注册小程序示例
在注册时, 可以绑定对应的生命周期函数, 在生命周期函数中, 执行对应的代码. https://developers.weixin.qq.com/miniprogram/dev/reference/api/App.html
`//注册小程序示例
App({
//生命周期函数
//小程序初始化完成时会执行的生命周期函数
onLaunch: function(options){
//console.log('小程序初始化完成:onlaunch')
//网络请求
// wx.request({
// url: 'url',
// })
//获取用户信息
//异步调用
//获取用户信息,并且获取用户信息之后,将用户信息传送给服务器
// wx.getUserInfo({
// success: function(res){
// console.log(res)
// }
// })
},
//小程序界面显示出来以后会执行
onShow: function(options){
console.log(‘界面显示出来:onshow’)
// //判断小程序的进入场景
// console.log(options)
// switch(options.scene){
// case 1001:break;
// case 1005:break;
// }
},
// //界面会隐藏时会执行
onHide: function(){
console.log(‘界面会隐藏时会执行:onhide’);
},
onError: function(msg){
console.log(‘小程序发生错误时会执行:onError’)
}
})`
注册App时做什么呢?
- 判断小程序的进入场景
- 监听生命周期函数,在生命周期中执行对应的业务逻辑,比如在某个生命周期函数中获取微信用户的信息。
- 因为App()实例只有一个,并且是全局共享的(单例对象),所以我们可以将一些共享数据放在这里。
◼ 小程序的打开场景较多: - 常见的打开场景:群聊会话中打开、小程序列表中打开、微信扫一扫打开、另一个小程序打开。
- 场景值列表
◼ 如何确定场景?
- 在onLaunch和onShow生命周期回调函数中,会有options参数,其中有scene值
获取用户信息 – 保存全局变量
◼ 获取微信用户的基本信息的方式:
1.wx.getUserInfo – 即将废弃的接口;
2.button组件 – 将open-type改成getUserInfo,并且绑定bindgetuserinfo事件去获取;
3.使用open-data组件展示用户信息;
注册页面
小程序中的每个页面, 都有一个对应的js文件, 其中调用Page方法注册页面示例
- 在注册时, 可以绑定初始化数据、生命周期回调、事件处理函数等。
注册Page时做什么?
◼ 注册一个Page页面时,我们一般需要做什么呢?
- 在生命周期函数中发送网络请求,从服务器获取数据;
- 初始化一些数据,以方便被wxml引用展示;
- 监听wxml中的事件,绑定对应的事件函数;
- 其他一些监听(比如页面滚动、上拉刷新、下拉加载更多等);
◼ 网络请求和其他一些事件的监听,放在后续再来使用
//注册一个页面
//页面也有自己的生命周期函数
Page({
data: {
text: 'init data',
array: [{msg: '1'}, {msg: '2'}]
},
//-------------1.监听页面的生命周期函数
// 页面被加载出来
onload:function(){
console.log('onload');
},
// 页面显示出来时
onShow:function(){
console.log('onShow');
},
// 页面初次渲染完成时
onReady:function(){
console.log('onReady');
},
// 页面隐藏时
onHide:function(){
console.log('onHide');
},
// 页面卸载时
onUnload(){
console.log('onUnload');
},
//--------- 3.监听wxml中的事件
hanleViewClick(){
console.log('被点击了');
}
})