5.4 注册页面
Page() 是微信小程序中用来注册一个页面的函数。它接受一个object参数,可以用于指定页面的初始数据、生命周期函数、事件处理函数等。Page() 函数每个页面有且仅有一个,存在于 .js 文件中。 object 参数说明,如表5-8所示:
表5-8
| 属性名 | 类型 | 说明 |
|---|---|---|
| data | Object | 页面的初始数据 |
| onLoad | Function | 生命周期函数--监听页面加载 |
| onReady | Function | 生命周期函数--监听页面初次渲染完成 |
| onShow | Function | 生命周期函数--监听页面显示 |
| onHide | Function | 生命周期函数--监听页面隐藏 |
| onUnload | Function | 生命周期函数--监听页面卸载 |
| onPullDownRefresh | Function | 页面相关事件处理函数--监听用户下拉动作 |
| onReachBottom | Function | 页面上拉触底事件的处理函数 |
| onShareAppMessage | Function | 用户点击右上角分享 |
| 其他 | Any | 开发者可以添加任意的函数或数据到 object 参数中,在页面的函数中用 this 可以访问 |
示例代码:
//index.js
Page({
data: {
text: "This is page data."
},
onLoad: function(options) {
// 页面加载时初始化操作
},
onReady: function() {
// 页面初次渲染完成时执行的操作
},
onShow: function() {
// 页面显示时执行的操作
},
onHide: function() {
// 页面隐藏时执行的操作
},
onUnload: function() {
// 页面卸载或关闭时执行的操作
},
onPullDownRefresh: function() {
// 用户在页面下拉时执行的操作
},
onReachBottom: function() {
// 到达页面底部时的操作
},
onShareAppMessage: function () {
// return custom share data when user share.
},
// 事件处理
viewTap: function() {
this.setData({
text: 'Set some data for updating view.'
})
},
customData: {
hi: 'MINA'
}
})
注意:
- bug: iOS/Android 6.3.30, 首次进入页面,如果页面不满一屏时会触发 onReachBottom ,应为只有用户主动上拉才触发。
- bug: iOS/Android 6.3.30, 手指上拉,会触发多次 onReachBottom ,应为一次上拉,只触发一次。