$attrs,$listeners,inheritAttrs

$attrs

包含了父组件中不被认为(且不预期为)props的特性绑定(class和style除外)。当一个组件没有声明任何props时,这时会包含所有父组件的绑定(class和style除外),并且可以通过v-bind="$attrs"传入内部组件-在创建更高层次的组件时非常有用。

$listeners

包含了父组件中的(不含.native修饰器)v-on事件监听器。它可以通过v-on="$listeners"传入内部组件-在创建更高层次的组件时非常有用。

inheritAttrs

默认情况下父组件的不被认作props的特性绑定(attribute bindings)将会“回退”且作为普通的HTML特性应用到子组件的根元素上,当撰写包裹一个目标元素或另一个组件的组件时,这可能不会总是符合预期行为。通过设置 inheritAttrs 到 false,这些默认行为将会被去掉。而通过 (同样是 2.4 新增的) 实例属性 $attrs 可以让这些特性生效,且可以通过 v-bind 显性的绑定到非根元素上。

上述特性的使用完全可以降低在不使用Vuex以及事件总线的情况下,组件跨级props以及事件传递的复杂度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值