Vue中如何利用$attrs实现组件间数据传递?

更新于
2026-10-01 02:07:51
0阅读来源:SEO基础
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1017个文字,预计阅读时间需要5分钟。

Vue中如何利用$attrs实现组件间数据传递?

组件间传递数据的方式有很多种,之所以有这么多方式,是为了满足在不同场景和条件下使用的需求。一般有以下三种方式:

1. props:通过属性传递数据,是父组件向子组件传递数据的方式。通常使用$attrs来介绍这种使用方式。

2.Vuex:用于在多个组件间共享状态,实现组件间的数据传递。

3.Vue Event Bus:通过事件总线实现组件间的通信。

以上是常见的几种组件间数据传递方式。

组件之间传递数据的方式有很多种,之所以有这么多种方式,是为了满足在不同场景不同条件下的使用。

一般有三种方式:

props
vuex
Vue Event Bus

本文介绍的是使用$attrs的方式。

这是$attrs的官网api cn.vuejs.org/v2/api/#vm-attrs

这个api是在2.4版本中添加的,那么为什么要添加这个特性呢?
看看官网是怎么解释的

包含了父作用域中不作为 prop 被识别 (且获取) 的特性绑定 ( class 和 style 除外)。

当一个组件没有声明任何 prop 时,这里会包含所有父作用域的绑定 ( class 和 style 除外),

并且可以通过 v-bind="$attrs" 传入内部组件——在创建高级别的组件时非常有用。

第一次看的话真是不容易看懂,这里是既包含用法又隐晦的说明了为什么使用,还是我来解释一下吧。

意思就是: $attrs 可以收集父组件中的所有传过来的属性除了那些在组件中没有通过 props 定义的。

阅读全文
标签:数

本文共计1017个文字,预计阅读时间需要5分钟。

Vue中如何利用$attrs实现组件间数据传递?

组件间传递数据的方式有很多种,之所以有这么多方式,是为了满足在不同场景和条件下使用的需求。一般有以下三种方式:

1. props:通过属性传递数据,是父组件向子组件传递数据的方式。通常使用$attrs来介绍这种使用方式。

2.Vuex:用于在多个组件间共享状态,实现组件间的数据传递。

3.Vue Event Bus:通过事件总线实现组件间的通信。

以上是常见的几种组件间数据传递方式。

组件之间传递数据的方式有很多种,之所以有这么多种方式,是为了满足在不同场景不同条件下的使用。

一般有三种方式:

props
vuex
Vue Event Bus

本文介绍的是使用$attrs的方式。

这是$attrs的官网api cn.vuejs.org/v2/api/#vm-attrs

这个api是在2.4版本中添加的,那么为什么要添加这个特性呢?
看看官网是怎么解释的

包含了父作用域中不作为 prop 被识别 (且获取) 的特性绑定 ( class 和 style 除外)。

当一个组件没有声明任何 prop 时,这里会包含所有父作用域的绑定 ( class 和 style 除外),

并且可以通过 v-bind="$attrs" 传入内部组件——在创建高级别的组件时非常有用。

第一次看的话真是不容易看懂,这里是既包含用法又隐晦的说明了为什么使用,还是我来解释一下吧。

意思就是: $attrs 可以收集父组件中的所有传过来的属性除了那些在组件中没有通过 props 定义的。

阅读全文
标签:数