问题: 因为父组件的tab切换, 导致子组件一直存在, 没有刷新. 所以当父组件传值更新时, 子组件无法获取到.
解决: 只要让子组件强制刷新就可以获取到props传递过来的值了. 利用v-if的特性, 在父组件中强制刷新子组件.
[](javascript:void(0); "复制代码")
<pre style="margin: 0px; padding: 0px; white-space: pre-wrap; overflow-wrap: break-word; font-family: "Courier New" !important; font-size: 12px !important;"><Son v-if="sonRefresh"></Son> data(){
return {
sonRefresh: true
}
}
// 下面这段内容写在父组件获取值的地方
this.sonRefresh= false;
this.$nextTick(() => {
this.sonRefresh= true;
});</pre>
](javascript:void(0); "复制代码")
以上内容都是写在父组件中的.