微信小程序的生命周期
##### 小程序页面的生命周期
管理小程序一个页面从创建到销毁的过程。
小程序中一个页面由一个Page对象来表示,所有的声明周期方法也都定义在该Page对象中,一共有5个。这5个生命周期方法将会在页面触发某种状态时自动被框架所调用。所以学习生命周期方法,主要要搞明白以下几个问题:
1. 每个生命周期方法什么时候执行?
2. 所有的生命周期方法的执行顺序?
3. 哪些方法整个生命周期仅调用一次?哪些方法会调用多次?
Page({
/** 生命周期函数--监听页面加载 */
onLoad(options) { },
/** 生命周期函数--监听页面初次渲染完成 */
onReady() { },
/** 生命周期函数--监听页面显示 */
onShow() { },
/** 生命周期函数--监听页面隐藏 */
onHide() { },
/** 生命周期函数--监听页面卸载 */
onUnload() { },
})
小程序应用的生命周期
小程序应用的生命周期方法定义在`app.js`中,管理整个小程序从初始化启动小程序到销毁的过程。
App({
onLaunch(){
应用程序启动完毕后执行
},
onShow(){
第一次显示应用时或从后台回到前台时都会执行
},
onHide(){
小程序隐藏时执行
},globalData: { 存储全局共享的数据 }
})
在小程序中,如果需要全局存储一些共享数据(每个页面都需要使用的),可以将这些数据存入`App.js`中的`globalData`属性里即可。`App.js`全局仅仅初始化一次,所以`App`对象有且仅有一个,所以可以将`globalData`作为参数传递的工具:
1. 在A处将数据存入`globalData`
2. 在B处从`globalData`中将数据取出
小程序发送`http`请求相关`API`
wx.request({
url: '请求路径',
method: 'GET | POST',
data: {请求参数名:请求参数值, 请求参数名:请求参数值,},
success: (res)=>{ 成功后的回调 },
fail: (err)=>{ 失败后的回调 },
complete: (r)=>{都会执行}
})
测试接口,看一下本地机器的浏览器是否能正常访问该地址:
https://api.tedu.cn/index.php?cid=1
如果访问不到,尝试修改`DNS`域名解析为:`114.114.114.114`。
1. 右键桌面右下角网络,选择打开网络设置。
2. 选择更改适配器选项。
3. 右键正在使用的网络,选择属性。双击Internet协议版本4。
4. 使用以下`DNS`地址进行解析:`114.114.114.114`。
`wx.request`发送请求有很多要求:
1. 请求域名必须在后台管理网站添加到合法域名列表中。
2. 请求协议必须:`https`mp.weixin.qq.com
3. 必须使用域名,不能使用`IP`。端口默认`443`。
4. 域名必须经过公安部`ICP`备案。
#### 请求域名必须在后台管理网站添加到合法域名列表中
1. 登录后台管理网站:``
2. 左侧选择:开发管理
3. 选择开发设置,向下滚,服务器域名配置,扫码认证后进行域名配置
4. 配置完毕后,打开小程序开发工具,右上角点击详情,查看项目配置是否已经更新合法域名。