zhuguifei
2025-04-08 ab59bcf89f3996d4da73402dd362b2a5d865735e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<script setup lang="ts">
import type { CheckboxRootEmits, CheckboxRootProps } from 'radix-vue';
 
import { useId } from 'vue';
 
import { useForwardPropsEmits } from 'radix-vue';
 
import { Checkbox } from '../../ui/checkbox';
 
const props = defineProps<CheckboxRootProps>();
 
const emits = defineEmits<CheckboxRootEmits>();
 
const checked = defineModel<boolean>('checked');
 
const forwarded = useForwardPropsEmits(props, emits);
 
const id = useId();
</script>
 
<template>
  <div class="flex items-center">
    <Checkbox v-bind="forwarded" :id="id" v-model:checked="checked" />
    <label :for="id" class="ml-2 cursor-pointer text-sm"> <slot></slot> </label>
  </div>
</template>