1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
| <template>
| <List :class="prefixCls">
| <a-row :gutter="16">
| <template v-for="item in list" :key="item.title">
| <a-col :span="6">
| <ListItem>
| <Card :hoverable="true" :class="`${prefixCls}__card`">
| <img :src="demoImg" />
| <div :class="`${prefixCls}__card-title`">
| {{ item.title }}
| </div>
| <div :class="`${prefixCls}__card-content`">
| {{ item.content }}
| </div>
| </Card>
| </ListItem>
| </a-col>
| </template>
| </a-row>
| </List>
| </template>
| <script lang="ts">
| import { defineComponent } from 'vue';
| import { List, Card, Row, Col } from 'ant-design-vue';
| import demoImg from '/@/assets/images/demo.png';
| import { projectList } from './data';
|
| export default defineComponent({
| components: {
| List,
| ListItem: List.Item,
| Card,
| [Row.name]: Row,
| [Col.name]: Col,
| },
| setup() {
| return {
| prefixCls: 'account-center-project',
| list: projectList,
| demoImg,
| };
| },
| });
| </script>
| <style lang="less">
| .account-center-project {
| &__card {
| width: 100%;
|
| .ant-card-body {
| padding: 0 0 24px;
| }
|
| img {
| width: 100%;
| height: 130px;
| }
|
| &-title {
| margin: 5px 10px;
| color: rgb(0 0 0 / 85%);
| font-size: 16px;
| font-weight: 500;
| }
|
| &-content {
| margin: 5px 10px;
| }
| }
| }
| </style>
|
|