前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >vue 父组件调用子组件的方法_vue子组件修改父组件值

vue 父组件调用子组件的方法_vue子组件修改父组件值

作者头像
全栈程序员站长
发布2022-11-09 17:48:15
2K0
发布2022-11-09 17:48:15
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

我们都知道通过$ref可以获取到某个DOM,但是它也可以用来获取子组件的实例,调用子组件的方法

例: 子组件:

代码语言:javascript
复制
<template>
  <div></div>
</template>

<script> export default { methods:{ childMethod(flag) { console.log(flag) } }, created(){ } } </script>

父组件: 在子组件中加上ref即可通过this.$refs.ref.method调用

代码语言:javascript
复制
<template>
  <div @click="parentMethod">
    <children ref="child1"></children>
  </div>
</template>

<script> import children from 'components/children/children.vue' export default { data(){ return { flag: true } }, components: { 'children': children }, methods:{ parentMethod() { console.log(this.$refs.child1) //返回的是一个vue对象,所以可以直接调用其方法 this.$refs.child1.childMethod(this.flag); } } } </script>
例子,兄弟组件间传递DOM数据,调用函数

写一个兄弟组件之间传递数据,父组件调用方法的案例: 第一个子组件cartcont,发射数据

代码语言:javascript
复制
this.$emit('cartadd', event.target);

父组件接收数据,并将数据,通过调用另一个子组件shopcart 的方法传递给另一个子组件shopcart

代码语言:javascript
复制
<v-cartcont :food="food" @cartadd='_drop'></v-cartcont>
<v-shopcart ref='shopcart'></v-shopcart>

_drop(target){
    console.log('父组件接收数据')
    this.$refs.shopcart.drop(target);
}

shopcart子组件的方法

代码语言:javascript
复制
drop(el){
    console.log('调用另一个子组件的方法')
    console.log(el)
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/186713.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月2日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 例子,兄弟组件间传递DOM数据,调用函数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档