yd-yunxing-web/src/components/SvgIcon/index.vue

22 lines
448 B
Vue

<script setup lang="ts">
import { computed, useAttrs } from 'vue';
import { Icon } from '@iconify/vue';
interface Props {
icon?: string;
}
defineProps<Props>();
const attrs = useAttrs();
const bindAttrs = computed<{ class: string; style: string }>(() => ({
class: (attrs.class as string) || '',
style: (attrs.style as string) || '',
}));
</script>
<template>
<Icon :icon="icon!" v-bind="bindAttrs" />
</template>