vue组件通信的理解

组件通信分为三种(父传子、子传父、兄弟通信)

第一种(父传子(props))
在父组件的子组件标签上面定义一个自定义属性把要传递过去的数据挂载到属性上面去,然后在子组件里面的props里面接收
在这里插入图片描述
在子组件的props里面接收
在这里插入图片描述
上面使用数组方式来接受的,不可以设置props验证和设置默认值

下面是用到了对象的方式来进行接收
在这里插入图片描述

第二种(子传父($emit))
在父组件中定义一个方法,然后在子组件的标签上面自定义一个事件名,然后在子组件中使用this.$emit()来触发父组件中定义的事件
父组件
在这里插入图片描述
在这里插入图片描述
子组件
在这里插入图片描述
在这里插入图片描述

第三种(兄弟通信(eventBus和vuex))
首先创建一个Vue实例,并写在创建好的bus文件中,然后在两个兄弟组件中分别引入刚才创建的bus文件,
在要传递数据的一方通过bus.$emit发送数据,然后在接收数据的一方通过bus.$on接受数据,数据是以回调函数的参数的形式传递过来的

Bus文件
在这里插入图片描述
两个兄弟组件中分别引入Bus文件
在这里插入图片描述
在要传递数据的兄弟组件中
设置点击事件
在这里插入图片描述
设置传递的数据
在这里插入图片描述
方法内容
在这里插入图片描述

在接收数据的兄弟组件中接收数据
在这里插入图片描述

vuex
vuex 是一个全局状态管理工具,主要解决大中型复杂项目的数据共享问题,主要包括 state,actions,mutations,getters 和 modules 5 个要素,组件通过 dispatch 到 actions,actions是异步操作,再 actions中通过 commitmutationsmutations 再通过逻辑操作改变 state,从而同步到组件,更新其数据状态

在src目录下新建一个store文件夹,在store目录下新建一个index.js文件
index.js文件
在这里插入图片描述
main.js文件
在这里插入图片描述
在这里插入图片描述
index.js文件
在这里插入图片描述
在这里插入图片描述
在组件中
在这里插入图片描述
浏览器中就会显示
在这里插入图片描述
其他关于vuex的我就不多介绍了,可以去看我另外一个文章,那里有更多关于veux的理解

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

看海、海湛蓝

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值