项目中子组件封装的是一个picker,父组件需要传数组到子组件中。
如果父组件的数组出现变更,视图中的子组件或许不能直接刷新渲染,需要反复弹起几下才能看到。
试过深度监听,但都没有用,ref也不知道为啥调不动,我这边使用子组件时外面还有个循环。
综上所述,解决方案如下:
2、当数组变化后调用$nextTick方法来重新渲染子组件的内容
视图层:
<view class="rt" v-if="agencyArr.length > 0 && isShowArr"> <pk-select :arr="agencyArr[index]" :atIndex="agencyArr[index].indexOf(agencyArr[index].find(x => x.id == item.agency_id))" keyIndex="name" @change="changeSelect($event,index,4)"></pk-select> </view>
控制层:
//当数组的值变更后 _self.agencyArr = arr; _self.isShowArr = false; _self.$nextTick(() => { _self.isShowArr = true; })
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。