mirror of
https://github.com/silenty4ng/k5web
synced 2025-04-06 08:35:47 +00:00
57 lines
1.7 KiB
Vue
57 lines
1.7 KiB
Vue
<template>
|
|
<div class="list-wrap">
|
|
<a-typography-title class="block-title" :heading="6">
|
|
{{ $t('cardList.tab.title.service') }}
|
|
</a-typography-title>
|
|
<a-row class="list-row" :gutter="24">
|
|
<a-col
|
|
v-for="item in renderData"
|
|
:key="item.id"
|
|
:xs="12"
|
|
:sm="12"
|
|
:md="12"
|
|
:lg="6"
|
|
:xl="6"
|
|
:xxl="6"
|
|
class="list-col"
|
|
style="min-height: 162px"
|
|
>
|
|
<CardWrap
|
|
:loading="loading"
|
|
:title="item.title"
|
|
:description="item.description"
|
|
:default-value="item.enable"
|
|
:action-type="item.actionType"
|
|
:expires="item.expires"
|
|
:open-txt="$t('cardList.service.open')"
|
|
:close-txt="$t('cardList.service.cancel')"
|
|
:expires-text="$t('cardList.service.renew')"
|
|
:tag-text="$t('cardList.service.tag')"
|
|
:expires-tag-text="$t('cardList.service.expiresTag')"
|
|
:icon="item.icon"
|
|
>
|
|
<template #skeleton>
|
|
<a-skeleton :animation="true">
|
|
<a-skeleton-line :widths="['100%', '40%', '100%']" :rows="3" />
|
|
<a-skeleton-line :widths="['40%']" :rows="1" />
|
|
</a-skeleton>
|
|
</template>
|
|
</CardWrap>
|
|
</a-col>
|
|
</a-row>
|
|
</div>
|
|
</template>
|
|
|
|
<script lang="ts" setup>
|
|
import { queryTheServiceList, ServiceRecord } from '@/api/list';
|
|
import useRequest from '@/hooks/request';
|
|
import CardWrap from './card-wrap.vue';
|
|
|
|
const defaultValue: ServiceRecord[] = new Array(4).fill({});
|
|
const { loading, response: renderData } = useRequest<ServiceRecord[]>(
|
|
queryTheServiceList,
|
|
defaultValue
|
|
);
|
|
</script>
|
|
|
|
<style scoped lang="less"></style>
|