chore: 新增是否使用在线图标配置

This commit is contained in:
kailong321200875
2023-12-26 14:15:03 +08:00
parent c4c7e2623a
commit 49a1f54c9f
8 changed files with 48 additions and 12 deletions

View File

@@ -3,6 +3,7 @@ import { computed, unref } from 'vue'
import { ElIcon } from 'element-plus'
import { propTypes } from '@/utils/propTypes'
import { useDesign } from '@/hooks/web/useDesign'
import { Icon } from '@iconify/vue'
const { getPrefixCls } = useDesign()
@@ -24,6 +25,11 @@ const symbolId = computed(() => {
return unref(isLocal) ? `#icon-${props.icon.split('svg-icon:')[1]}` : props.icon
})
// 是否使用在线图标
const isUseOnline = computed(() => {
return import.meta.env.VITE_USE_ONLINE_ICON === 'true'
})
const getIconifyStyle = computed(() => {
const { color, size } = props
return {
@@ -39,15 +45,18 @@ const getIconifyStyle = computed(() => {
<use :xlink:href="symbolId" />
</svg>
<!-- <Icon v-else :icon="icon" :style="getIconifyStyle" /> -->
<div :class="`${icon} iconify`" :style="getIconifyStyle"></div>
<template v-else>
<Icon v-if="isUseOnline" :icon="icon" :style="getIconifyStyle" />
<div v-else :class="`${icon} iconify`" :style="getIconifyStyle"></div>
</template>
</ElIcon>
</template>
<style lang="less" scoped>
@prefix-cls: ~'@{namespace}-icon';
.@{prefix-cls} {
.@{prefix-cls},
.iconify {
:deep(svg) {
&:hover {
// stylelint-disable-next-line