Vue中$attrs的用法和$listeners的用法

123 阅读1分钟

$attrs

vue中可以通过props来声明父组件传过来的参数,如果不声明的话就不能在子组件中直接使用

但是还可以通过$attrs来直接使用父组件传过来的参数

<back-header name="修改密码" /> // 父组件


<span>{{ $attrs.name }}</span>  // 子组件

$listeners

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

<my-button :msg="msg" @todo="handleClick"></my-button> // 父组件
<div @click="$listeners.todo">C</div> // 子组件