主要原因是我在其他页面的js里面写了两个onPullDownRefresh,因为第二个onPullDownRefresh是自动生成的一个空的函数,程序执行时相同的函数,只会执行最后一个,导致无监听下拉刷新效果
1、如何设置全局下拉刷新
app.json
"window": {
"navigationBarBackgroundColor": "#fff", // 导航栏背景颜色,如"#000000"
"navigationBarTitleText": "首页", // 导航栏标题文字内容
"navigationBarTextStyle": "black", // 导航栏标题颜色,仅支持 black/white
"backgroundColor": "#666", // 窗口的背景色
"onReachBottomDistance": "50px", // 页面上拉触底事件触发时距页面底部距离,单位为px
"backgroundTextStyle": "light", // 下拉 loading 的样式,仅支持dark/light
"enablePullDownRefresh": true // 是否开启下拉刷新(属性值必须是boolean)
},
index.js
需要监听下拉刷新的页面,在其js文件添加如下代码:
onPullDownRefresh: function () {
wx.showNavigationBarLoading() //在标题栏中显示加载
//模拟加载
setTimeout(function () {
// complete
wx.hideNavigationBarLoading() //完成停止加载
wx.stopPullDownRefresh() //停止下拉刷新
}, 1000);
}
每个页面创建的时候js文件里面会自动生成一些函数:
image
注意:
1、每个js文件只会执行最后一个onPullDownRefresh,如果js文件里面写了两个onPullDownRefresh函数,程序执行时只会执行第二个onPullDownRefresh里面的代码。
2、onPullDownRefresh写在app.js里面是不会起作用的,需要监听哪个页面下拉刷新就在哪个页面的js文件里添加onPullDownRefresh
网友评论