在小程序130400版本之前,所有代码无论是真机上还是模拟器上都已经测试完毕,包括更多电影页面的下拉刷新操作。
但自从小程序更新了130400版本后,我自己测试也是模拟器中可以实现more-movie页面的下拉刷新动作,但一到真机上下拉刷新就没有效果了。
导致真机无法实现下拉刷新效果的问题在于,我们在开启下拉刷新配置项时是这么写的:
{
"enablePullDownRefresh": “true”
}
问题就出在true这个变量值上。我们的代码中写的是'true’,这是个字符串而不是Boolean类型的变量。设置成字符串将导致模拟器中可以触发onPullDownRefresh函数,但是在真机中却无法触发刷新函数。将字符串 “true“更改为Boolean类型的true后,无论是在真机还是在模拟器中都可以正确的触发onPullDownRefresh函数了。
虽然微信模拟器和真机行为不统一且偷偷更改了运行环境导致问题被隐藏是一原因,但我们在编码时没有按照文档的要求将true设置为Boolean类型的参数值是主要原因。
我们哪个页面需要下拉刷新,就在哪个页面对应的xxx.json文件配置上面属性,这个属性从字面意思也可以知道,是否允许下拉刷新,当然,如何你不想一个个配置允许下拉刷新,你可以直接在全局变量app.json的window里面配置上面这个属性,这样整个项目都允许下拉刷新了,这个一定要加的,因为系统默认是不具备下拉刷新功能的
onPullDownRefresh:function()
{
wx.showNavigationBarLoading() //在标题栏中显示加载
//模拟加载
setTimeout(function()
{
// complete
wx.hideNavigationBarLoading() //完成停止加载
wx.stopPullDownRefresh() //停止下拉刷新
},1500);
},