父组件刷新子组件也刷新

方法就是父组件定义一个变量,然后传到子组件,子组件一直监听这个变量,当父组件刷新时,将变量值赋值成1,然后子组件监听到父组件传来的值的变化,进行刷新操作后再将值变成9,然后父组件接受。这时值变成了9然后父组件再刷新值就变成了1,,子组件又开始刷新。这个变量的默认值是0

父组件

        <SlideCard @equipmentMac="getMac" @cardData="getCardData" :isRefresh='isRefresh' @cref='listenRef'></SlideCard>

data里//子组件刷新标识isRefresh:0

onPullDownRefresh() {
            // 下拉刷新 执行先置空然后再加数据避免数据重复
            this.getTagData()
            this.isRefresh = 1
            uni.stopPullDownRefresh()
        },

listenRef(data){
                console.log('已刷新',data)
                this.isRefresh = data
            },

子组件

props:{
            isRefresh:{
                type:Number,
                default:9
            }
        },

watch:{
            isRefresh:{
                deep:true,
                handler(newValue,oldValue){
                    this.getQueryPersonCard()//子组件更新数据的方法
                    this.$emit('cref',9)
                }
            }
        },

 

posted @ 2024-05-16 10:15  prince11  阅读(94)  评论(0编辑  收藏  举报