父子组件
子组件通过 props 属性来接受父组件的数据,然后父组件在子组件上注册监听事件,子组件通过 emit 触发事件来向父组件发送数据。
defineProps接收
let props = defineProps({
data: Array,
});
defineModel接收
let bb = defineModel("site");
兄弟组件
- 第一种是使用 eventBus 的方法,它的本质是通过创建一个空的 Vue 实例来作为消息传递的对象,通信的组件引入这个实例,通信的组件通过在这个实例上监听和触发事件,来实现消息的传递。
- 第二种是通过 $parent.$refs 来获取到兄弟组件,也可以进行通信。
任意组件
使用 eventBus ,其实就是创建一个事件中心,相当于中转站,可以用它来传递事件和接收事件。