1.修改pages.json的"enablePullDownRefresh": true
"pages": [
{
"path": "pages/orderForm/orderForm",
"style": {
"navigationBarTitleText": "订单查询",
"enablePullDownRefresh": true, //开启下拉刷新 默认为false
"navigationBarBackgroundColor": "#000",
"navigationBarTextStyle": "white"
}
},
],
2.父组件,传入isRefresh值
<view v-if="current === 1"><unclaimeditem :isRefresh='isRefresh'></unclaimeditem></view>
3.初始化。这边的onPullDownRefresh()我在后面加1,是因为初始值本身为0 ,如果不对此加以改变,第一个页面刷新了,就触发不到子组件的watch属性。
data(){
return{
isRefresh:0,
}
},
// 下拉刷新
onPullDownRefresh() {
setTimeout(() => {
this.isRefresh+=1
// ... 这里写刷新时需要完成的数据加载
uni.stopPullDownRefresh(); //停止刷新
console.log("刷新成功");
}, 1000);
},
4.子组件:props接收父组件传递过来的参数,并给默认值。
props:{
isRefresh:{
type:Number,
default:0
}
},
watch:{
isRefresh:{
handler(n,o){
console.log("子组件",n);
this.getAllList() //子组件要刷新调用的方法
}
}
},