在 react 中可以直接使用 <Child {...props}/>这样的方式,在 vue 中应该怎样实现呢?
1
xclin163 Nov 16, 2020
<Child v-bind="$props" />
|
2
TsubasaHanekaw Nov 16, 2020
v-bind="$props" v-on="$listeners"
|
3
geylnu Nov 16, 2020
默认就会给根元素加上父组件传来的属性
|
4
ryncv Nov 16, 2020
@TsubasaHanekaw 一个小 tips: 这种方式如果绑定有 v-model 需要另外处理 https://github.com/vuejs/vue/issues/7042
|
5
9LCRwvU14033RHJo Nov 16, 2020
@TsubasaHanekaw
vue 3 好像有不向下兼容的改动(breaking change)。 v3.vuejs.org/guide/migration/listeners-removed.html#_2-x-syntax |
6
lemonnTr Nov 17, 2020
@ryncv 刚看这个 issue 还有点疑惑为啥 v-model 不能绑定,后来想想我都是直接使用 <Child v-bind="$attrs" v-on="$listeners" />,而不是单独使用 v-on="$listeners"。
|
7
Sapp Nov 17, 2020
vue 默认就会这样,然而这是个大坑。
|
8
JayLin1011 Nov 19, 2020
1. $attrs;
2. provide. |