From e181f04c642204e79749af93fa921875ff6c21ba Mon Sep 17 00:00:00 2001 From: baoshiwei <baoshiwei@shlanbao.cn> Date: 星期二, 20 五月 2025 10:46:35 +0800 Subject: [PATCH] refactor(qms): 重构趋势图展示逻辑 --- src/components/SvgIcon/index.vue | 41 +++++++++++++++++------------------------ 1 files changed, 17 insertions(+), 24 deletions(-) diff --git a/src/components/SvgIcon/index.vue b/src/components/SvgIcon/index.vue index 4a858bd..05dfe87 100644 --- a/src/components/SvgIcon/index.vue +++ b/src/components/SvgIcon/index.vue @@ -1,33 +1,26 @@ -<script setup lang="ts"> -const props = defineProps({ - iconClass: { - type: String, - required: true - }, - className: { - type: String, - default: '' - }, - color: { - type: String, - default: '' - }, -}) -const iconName = computed(() => `#icon-${props.iconClass}`); -const svgClass = computed(() => { - if (props.className) { - return `svg-icon ${props.className}` - } - return 'svg-icon' -}) -</script> - <template> <svg :class="svgClass" aria-hidden="true"> <use :xlink:href="iconName" :fill="color" /> </svg> </template> +<script setup lang="ts"> +import { propTypes } from '@/utils/propTypes'; + +const props = defineProps({ + iconClass: propTypes.string.isRequired, + className: propTypes.string.def(''), + color: propTypes.string.def('') +}); +const iconName = computed(() => `#icon-${props.iconClass}`); +const svgClass = computed(() => { + if (props.className) { + return `svg-icon ${props.className}`; + } + return 'svg-icon'; +}); +</script> + <style scope lang="scss"> .sub-el-icon, .nav-icon { -- Gitblit v1.9.3