Vue组件分装之$attrs、$listener传递属性及事件

2023-12-05

使用 v-bind="$attrs" 来将父组件的属性传递给自定义按钮

使用 v-on="$listeners" 将父组件的事件监听器传递给自定义按钮。

使用 $slots 获取父组件所有插槽以及作用域插槽对应的参数#[name]="scopeData"

这样,自定义按钮就能够直接响应父组件的事件,而不需要手动触发。

  <Select ref="selectRef" v-bind="$attrs" v-on="$listener">
    <template v-for="(value, name) in $slots" #[name]="scopeData">
      <slot :name="name" v-bind="scopeData || {}"></slot>
    </template>
    <Option v-for="(item, index) in optionDatas" :value="item.value" :key="item.value + index">{{
      item.label
    }}</Option>
  </Select>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue组件分装之$attrs、$listener传递属性及事件 的相关文章

随机推荐