vue组件间通信方式
1、props和
e
m
i
t
父
组
件
向
子
组
件
传
递
数
据
是
通
过
p
r
o
p
传
递
的
,
子
组
件
传
递
数
据
给
父
组
件
是
通
过
emit 父组件向子组件传递数据是通过prop传递的,子组件传递数据给父组件是通过
emit父组件向子组件传递数据是通过prop传递的,子组件传递数据给父组件是通过emit触发事件来做到的
2、中央事件总线bus
非父子组件,新建Vue事件bus对象,然后通过bus.
e
m
i
t
触
发
事
件
,
b
u
s
.
emit触发事件,bus.
emit触发事件,bus.on监听触发的事件
3、provide和inject
父组件中通过provider来提供变量,然后在子组件中通过inject来注入变量。不管层级多深都可以获得
4、v-model
父组件通过v-model传递值给子组件时,会自动传递一个value的prop属性,在子组件中通过this.$emit(‘input’,val)自动修改v-model绑定的值
5、vuex处理
如果业务逻辑复杂,很多组件之间需要同时处理一些公共的数据,这个时候才有上面这一些方法可能不利于项目的维护,vuex的做法就是将这一些公共的数据抽离出来,然后其他组件就可以对这个公共数据进行读写操作,这样达到了解耦的目的
6、ref获取
vue组件间通信方式
最新推荐文章于 2024-08-08 15:28:54 发布