vue父组件的方法里获取不到子组件的值
时间: 2023-09-15 22:19:55 浏览: 133
在Vue中,父组件需要获取子组件的值时,可以使用`ref`和`props`来实现。首先,在父组件中,我们可以通过在子组件上添加`ref`属性来获取子组件的实例。然后,我们可以通过`ref`实例来调用子组件的方法或获取子组件的属性。
具体步骤如下:
1. 在父组件中,引入子组件并定义一个`ref`。例如,可以在父组件的模板中添加`<son ref="myRefs"></son>`来引入子组件并定义一个`ref`名为`myRefs`。
2. 在父组件的方法中,通过`ref`去调用子组件的方法。例如,在父组件的方法`giveParentHandVal`中,可以使用`this.$refs.myRefs.change()`来调用子组件的`change`方法。
3. 如果需要获取子组件暴露的属性,可以通过`this.$refs.myRefs`来访问子组件实例,然后使用点语法获取相应的属性。例如,可以使用`console.log(this.$refs.myRefs.age)`来获取子组件的`age`属性。
通过以上步骤,父组件就可以在自己的方法中获取子组件的值了。请注意,在使用`ref`时,需要确保子组件已经被渲染并且`ref`引用已经被赋值。此外,如果需要在子组件中修改父组件的值,可以使用`props`属性将数据从父组件传递给子组件,并通过事件或回调函数实现双向绑定。
参考文献:
<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [vue 子组件调用父组件方法、值(父传子);父组件调用子组件方法、值(子传父)。](https://blog.csdn.net/m0_65274248/article/details/127536414)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* [vue3.0 父组件调用子组件方法及获取子组件的值](https://blog.csdn.net/weixin_44132285/article/details/126517620)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文