父子组件通信传值
- props $emit
- $parent $children
- $ref
非父子间传值
- 事件总线
//原理上就是建立一个公共的js文件,专门用来传递消息
// bus.js
import Vue from 'vue'
export default new Vue;
//在需要传递消息的地方引入
import bus from './bus.js'
//传递消息
bus.$emit('msgEvent', val);
//接受消息
bus.$on('msgEvent', (val) => {
console.log(val);
})
- $arrts $listeners
//解决多级组件间传值的问题
//$attr将父组件中不包含props的属性传入子组件,通常配合interitAttrs选项一起使用
//$listeners监听 子组件中数据的变化,传递给父组件
- vuex