vue3中能通过props、slot、emit、proProvide/Inject来进行数据的传递,那么到底用哪个好呢?我觉得proProvide/Inject是最简单的方式,那么还需要用porps、slot、emit吗
其实除了这些东西,还有一种办法,就是直接创建一个js文件:

假如我们有一个这样的需求:

实现点击按钮时会触发两个count都++ 也就是两个组件的部分数据或函数都是同一个,要实现这样的操作,我们常常 这样做:
直接创建了一个js文件写vue的代码,然后js代码又没有vue组件的功能搞template什么的 所以只有script中的部分功能 刚好用来将多个数据绑定在一起,
将专门用来export的js文件放在store文件夹下,然后在需要绑定同一个数据或函数的vue组件中导入并使用即可
Vue3中的数据传递:props、slot、emit与provide/inject的抉择
在Vue3中,可以通过props、slot、emit以及provide/inject进行数据传递。尽管provide/inject提供了一种简洁的方式,但props、slot和emit仍有其适用场景。例如,props用于父组件向子组件传递数据,slot用于组织组件内容,emit则允许子组件与父组件通信。另外,创建独立的js文件并存于store目录下,可以作为管理共享数据或函数的一种解决方案。
460

被折叠的 条评论
为什么被折叠?



