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 |   39 ++++++++++++++++-----------------------
 1 files changed, 16 insertions(+), 23 deletions(-)

diff --git a/src/components/SvgIcon/index.vue b/src/components/SvgIcon/index.vue
index 661ae51..05dfe87 100644
--- a/src/components/SvgIcon/index.vue
+++ b/src/components/SvgIcon/index.vue
@@ -1,32 +1,25 @@
+<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: {
-    type: String,
-    required: true
-  },
-  className: {
-    type: String,
-    default: ''
-  },
-  color: {
-    type: String,
-    default: ''
-  },
-})
-const iconName =  computed(() => `#icon-${props.iconClass}`);
+  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 ${props.className}`;
   }
-  return 'svg-icon'
-})
+  return 'svg-icon';
+});
 </script>
-
-<template>
-	<svg :class="svgClass" aria-hidden="true">
-		<use :xlink:href="iconName" :fill="color" />
-	</svg>
-</template>
 
 <style scope lang="scss">
 .sub-el-icon,

--
Gitblit v1.9.3