backdrop
工具

useEmitAsProps

将 emits 转换为类似 props 的对象

当您为组件构建包装器时,最大的痛点之一是转发来自组件的所有发射事件。

通过使用此组合式函数,它可以将您声明的 emits 转换为 Vue 组件可接受的处理器对象。

用法

vue
<script setup lang="ts">
import { useEmitAsProps } from 'reka-ui'

const emits = defineEmits<CompEmitType>()
const emitsAsProps = useEmitAsProps(emits)
</script>

<template>
  <Comp v-bind="emitsAsProps">
    ...
  </Comp>
</template>