1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- <template>
- <div class="md:flex">
- <template v-for="(item, index) in list" :key="item.title">
- <Card
- size="small"
- :loading="loading"
- :title="item.title"
- class="md:w-1/4 w-full !md:mt-0 !mt-4"
- :class="[index + 1 < 6 && '!md:mr-4']"
- :canExpan="false"
- >
- <template #extra>
- <Tag :color="item.color">{{ item.action }}</Tag>
- </template>
- <div class="py-4 px-4 flex justify-between">
- <CountTo :prefix="item.unit" :startVal="1" :endVal="item.value" class="text-2xl" />
- <!-- <Icon :icon="item.icon" :size="40" /> -->
- </div>
- <!-- <div class="p-2 px-4 flex justify-between">
- <span>总{{ item.title }}</span>
- <CountTo prefix="$" :startVal="1" :endVal="item.total" />
- </div> -->
- </Card>
- </template>
- </div>
- </template>
- <script lang="ts" setup>
- import { CountTo } from '/@/components/CountTo/index';
- import { Icon } from '/@/components/Icon';
- import { Tag, Card } from 'ant-design-vue';
- import { growCardList, GrowCardItem } from '../data';
- defineProps({
- loading: {
- type: Boolean,
- },
- list: {
- type: Array as PropType<Array<GrowCardItem>>,
- default: [],
- },
- });
- </script>
|