Vue2:$attrs多层传值
在不用状态管理vuex的时候,如何让GrandFather与Son通信,我们可以用可以emit一层一层的传递:会显得冗余。
vue2.4之后,提出$attrs、$listeners ,可以实现跨级组件通信。
$listeners官网解说:事件传递
$attrs官网解说:属性传递
在组件中绑定 可以把当前组件的自定义属性和方法传给子元素使用:
$attrs中包含的数据=(父组件总的传过来的数据-子组件props接收的数据)
$attrs的方便之处在于数据一层一层的传下去,不用每一层都用props接收之后再传给后面的组件。可以直接加一个
v-bind='$attrs'
就可以传下去了语法:
v-bind='$attrs'