vue父子组件通信以及非父子组件通信的方法

简介: vue父子组件通信以及非父子组件通信的方法

组件是 vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用。一般来说,组件可以有以下几种关系,父子关系、兄弟关系和隔代关系,简化点可以分为父子关系和非父子关系,下面就讲讲vue父子组件通信以及非父子组件通信的方法。使用代码格式会比较乱,所以直接使用图片演示。

1.父子组件

(1).父组件数据传递给子组件

传递

注:这里的child-msg必须用-代替驼峰,否则识别不到方法

接收

方式1

注:接收-改成驼峰

式2

注:这里可以指定传入的类型,如果类型不对,会警告

式3

注:指定类型。那我们也可以设置默认值

(2).子组件数据传递给父组件

传递

注:fatherFunc是在父组件中定义的,要和父组件对应上

接收

image.gif

注:fatherFunc对应子组件中的this.$emit中的

2.非父子

创建空的实例放在根组件下,所有的子组件都能调用

image.gif

注:这个空的实例,所有的组件都能调用,父子、非父子都可以

传递方

接收方

以上讲的并非全部vue组件数据通信方法,只是我在项目中用到的总结归类,vuex(状态管理)项目用到的比较少,后期用到了,再补充。这样父传子、子传父和非父子组件数据传递就完成了。


相关文章
|
6月前
|
JavaScript
在Vue中,父组件和子组件之间是如何通信的?
在Vue中,父组件和子组件之间是如何通信的?
44 3
|
2月前
|
JavaScript
关于Vue非父子组件通信遇到的细节问题
本文讨论了Vue中非父子组件通信的一个细节问题,即当使用事件总线($eventsBus)进行通信时,需要确保两个组件能够同时在页面上显示,否则可能无法正确触发和监听事件。作者通过组件A和B的例子说明了这一点,并指出解决方案是在一个共同的父组件C中监听事件。
20 1
关于Vue非父子组件通信遇到的细节问题
|
6月前
|
存储 JavaScript 前端开发
父子组件通信:有效地在Vue组件树中传递数据
【4月更文挑战第24天】Vue.js中的组件通信是实现可维护和可扩展代码的关键。遵循单向数据流原则,数据从父组件通过`props`传给子组件,子组件通过`$emit`触发事件响应。常用通信方式包括:1) `Props`和`Events`基础通信;2) `Provide / Inject`跨级通信;3) 使用Vuex管理复杂状态;4) 共享祖先组件或Vuex处理非父子组件通信;5) 少量使用`ref`和`$parent / $children`直接访问。选择合适的方式能优化应用性能和用户体验。
68 0
|
6月前
|
JavaScript
vue父子组件之间通讯方式
vue父子组件之间通讯方式
31 2
|
6月前
|
JavaScript API
Vue3中的父子、子父组件通信
Vue3中的父子、子父组件通信
80 0
|
6月前
|
JavaScript API
Vue3父子组件通讯
Vue3父子组件通讯
79 0
|
JavaScript 索引
【Vue】父子组件通信
【Vue】父子组件通信
105 0
【Vue】父子组件通信
VUE3_非父子组件的通信
VUE3_非父子组件的通信
153 0
|
JavaScript
Vue 父子组件通信详解
子组件是不能引用父组件或者 Vue 实例的数据的。
228 0
Vue 父子组件通信详解
|
JavaScript
vue 父子组件通信
vue 父子组件通信
120 0
vue 父子组件通信