Vue中的的通信方式有几种?隔代组件的通信你用那种方式解决?

这篇具有很好参考价值的文章主要介绍了Vue中的的通信方式有几种?隔代组件的通信你用那种方式解决?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

props/$emit 适用父子组件通信

ref与parent/children适用父子组件通信

attrs/listeners,provide/inject 适用于隔代组件通信

vuex,EventBus(事件总线) 适用于父子、隔代、兄弟组件通信

slot插槽方式

attrs实例

父组件(这时候我们传了两个参数title和type)

<template>
  <div>
    <div class="father">我是父组件,点击传值给孙子组件</div>
    <child :title="title" :type="type" />
  </div>
</template>
<script>
import child from "./components/child";
export default {
  components: {
    child
  },
  data() {
    return {
      title: "",
      type: ""
    };
  },
  methods: {}
};
</script>

子组件(注意:子组件使用了title,那么孙子组件就拿不到title值。)

<template>
  <div>
    <div class="child">
      <div>我是子组件{{title}}</div>
    </div>
    <grandson v-bind="$attrs" />
  </div>
</template>
<script>
import grandson from "./grandson";

export default {
  components: {
    grandson
  },
  props: {
    title: {
      type: String,
      default: ""
    }
  },
  watch: {
    $attrs() {
      console.log(this.$attrs, "attrs");
    },
  },
  data() {}
};
</script>

孙子组件(该组件只能显示type)文章来源地址https://www.toymoban.com/news/detail-634614.html

<template>
  <div>
    <div class="grandson">我是孙子组件{{title}}{{type}}</div>
  </div>
</template>
<script>
export default {
  props: {
    title: {
      type: String,
      default: ""
    },
    type: {
      type: String,
      default: ""
    }
  },
  watch: {
    title() {
      console.log(this.title, "=====孙子组件");
    },
    type() {
      console.log(this.type, "=====孙子组件");
    }
  },
  data() {
    return {};
  }
};
</script>

到了这里,关于Vue中的的通信方式有几种?隔代组件的通信你用那种方式解决?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • SpringBoot中有几种定义Bean的方式?

    注意:@ControllerAdvice相当于对于Controller的切面,可以绑定PropertyEditor。 (类似于AOP,但是底层不是AOP实现。) 注意:@Configuration 主要标识一个Bean是一个配置Bean,利用这个Bean可以对Spring进行配置,比如扫描路径、定义其他的Bean。 这是我们其他所有方法的底层实现。 MyApplic

    2024年02月02日
    浏览(8)
  • 【面试题】如何实现数组去重的?有几种方式?

    【面试题】如何实现数组去重的?有几种方式?

     前端面试题库 ( 面试必备)              推荐:★★★★★ 地址:前端面试题库 【国庆头像】- 国庆爱国 程序员头像!总有一款适合你! 通过两层循环对数组元素进行逐一比较,然后通过splice方法来删除重复的元素。此 方法对NaN是无法进行去重的 ,因为进行比较时

    2024年02月10日
    浏览(14)
  • 手机怎么登录企业邮箱?手机登录邮箱有几种方式?

    手机怎么登录企业邮箱?手机登录邮箱有几种方式?

    一、手机怎么登录企业邮箱?手机登录企业邮箱有几种方式 1.可以通过手机浏览器登录企业邮箱,方便快捷无需下载软件。 2.手机自带的邮件软件,通过POP3的协议就能够收发 3.第三方的APP,Zoho Mail的邮箱APP,腾讯的QQ邮箱都属于这一类的,但操作上就属于客户端的类型和原邮

    2024年02月03日
    浏览(13)
  • 【Spring】基于注解方式存取JavaBean:Spring有几种注入方式?有什么区别?

    【Spring】基于注解方式存取JavaBean:Spring有几种注入方式?有什么区别?

     Hello,我是小黄。众所周知,Spring是一个开源的Java应用程序框架,其中包括许多通过注解实现依赖注入的功能。Spring提供了多种注入方式,可以满足不同的需求和场景。常见的注入方式包括构造函数注入、Setter方法注入和属性注入。不同的注入方式有不同的适用场景和优缺

    2024年02月11日
    浏览(12)
  • vue子组件调用父组件方法的几种方式

    一、直接在子组件中通过  this.$parent.event来调用父组件方法 父组件 子组件 二、在子组件里用 $emit 向父组件触发一个事件,父组件监听这个事件 父组件 子组件 三、父组件将方法传入子组件,子组件直接调用 父组件 子组件

    2024年02月12日
    浏览(11)
  • Git 命令行教程及实例教程,Service有几种启动方式

    Git 命令行教程及实例教程,Service有几种启动方式

    切换回主分支: git checkout master 切换回分支: git checkout git checkout feature_x 再把新建的分支删掉: git branch -d feature_x 除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的: git push origin git push origin feature_x 更新与合并 要更新你的本地仓库至最新改动,执行: git pu

    2024年04月17日
    浏览(16)
  • mysql 删除表中数据的方式有几种?各有什么优劣?

    在MySQL中,删除表中数据的方式有多种。下面是一些常用的方式以及它们的优劣势: 使用DELETE语句: 优势:DELETE语句是最常见和简单的删除数据方式。它可以删除表中的所有数据或者根据WHERE子句删除指定条件的数据。 劣势:DELETE语句执行时,会将数据逐行删除,对于大表或

    2024年02月16日
    浏览(13)
  • vue父子组件之间的传参的几种方式

    这是最常用的一种方式。通过props选项,在父组件中传递数据给子组件。在子组件中使用props声明该属性,就可以访问到父组件传递过来的数据了。 子组件向父组件传递数据的方式。在子组件中使用emit方法触发一个自定义事件,并通过参数传递数据。在父组件中监听这个事件

    2023年04月24日
    浏览(41)
  • vue组件间通信方式

    组件之间的通信是指不同组件之间在共享数据、传递消息或触发事件等方面进行交流和协作的过程。在应用程序中,不同的组件可能需要相互传递数据、共享状态、触发动作或响应事件等,以实现组件之间的协调和交互。 vue组件之间的通信可以有多种形式和方式,常见的包括

    2024年02月11日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包