vue-vben-admin/src/views/demo/feat/icon/index.vue

73 lines
2.6 KiB
Vue

<template>
<PageWrapper title="Icon组件示例">
<CollapseContainer title="Antv Icon使用 (直接按需引入相应组件即可)">
<div class="flex justify-around">
<GithubFilled :style="{ fontSize: '30px' }" />
<QqCircleFilled :style="{ fontSize: '30px' }" />
<WechatFilled :style="{ fontSize: '30px' }" />
<AlipayCircleFilled :style="{ fontSize: '30px' }" />
<IeCircleFilled :style="{ fontSize: '30px' }" />
<TaobaoCircleFilled :style="{ fontSize: '30px' }" />
<CodepenCircleFilled :style="{ fontSize: '30px' }" />
</div>
</CollapseContainer>
<CollapseContainer title="IconIfy 组件使用" class="my-5">
<div class="flex justify-around flex-wrap">
<Icon icon="ion:layers-outline" :size="30" />
<Icon icon="ion:bar-chart-outline" :size="30" />
<Icon icon="ion:tv-outline" :size="30" />
<Icon icon="ion:settings-outline" :size="30" />
</div>
</CollapseContainer>
<CollapseContainer title="svg 雪碧图" class="my-5">
<div class="flex justify-around flex-wrap">
<SvgIcon name="test" size="32" />
<template v-for="item in 6" :key="item">
<SvgIcon :name="`dynamic-avatar-${item}`" size="32" />
</template>
</div>
</CollapseContainer>
<CollapseContainer title="图标选择器(Iconify)" class="my-5">
<div class="flex justify-around flex-wrap">
<IconPicker />
</div>
</CollapseContainer>
<CollapseContainer title="图标选择器(Svg)" class="my-5">
<div class="flex justify-around flex-wrap">
<IconPicker mode="svg" />
</div>
</CollapseContainer>
<Alert
show-icon
message="推荐使用Iconify组件"
description="Icon组件基本包含所有的图标,在下面网址内你可以查询到你想要的任何图标。并且打包只会打包所用到的图标。"
/>
<a-button type="link" @click="openWindow('https://iconify.design/')">
Iconify 图标大全
</a-button>
</PageWrapper>
</template>
<script lang="ts" setup>
import { CollapseContainer } from '@/components/Container';
import { Alert } from 'ant-design-vue';
import {
QqCircleFilled,
GithubFilled,
WechatFilled,
AlipayCircleFilled,
IeCircleFilled,
TaobaoCircleFilled,
CodepenCircleFilled,
} from '@ant-design/icons-vue';
import { IconPicker, SvgIcon } from '@/components/Icon';
import Icon from '@/components/Icon/Icon.vue';
import { openWindow } from '@/utils';
import { PageWrapper } from '@/components/Page';
</script>