ElSvgIcon.vue 658 B

12345678910111213141516171819202122232425262728293031323334353637
  1. <template>
  2. <el-icon :size="size" :color="color">
  3. <component :is="ElSvg[name]" />
  4. </el-icon>
  5. </template>
  6. <script setup>
  7. import * as ElSvg from '@element-plus/icons-vue'
  8. const props = defineProps({
  9. name: {
  10. require: true,
  11. default: 'Fold',
  12. type: String
  13. },
  14. size: {
  15. require: false,
  16. default: 18,
  17. type: Number
  18. },
  19. color: {
  20. require: false,
  21. default: '',
  22. type: String
  23. }
  24. })
  25. let { name } = props
  26. </script>
  27. <style scoped lang="scss">
  28. //.el-svg-icon {
  29. // width: 1em;
  30. // height: 1em;
  31. // margin-left: -2px; //el-svg-icon has some margin
  32. // font-size: 20px !important;
  33. // text-align: left !important;
  34. //}
  35. </style>