1
1
<template >
2
- <div class =" card-list " >
3
- <div v-for =" item in publicList" :key =" item.id " class =" card " >
4
- <img :src =" item.picUrl" class =" img" />
2
+ <div class =" gallery " >
3
+ <div v-for =" item in publicList" :key =" item" class =" gallery-item " >
4
+ <img :src =" item.picUrl" class =" img" />
5
5
</div >
6
6
</div >
7
7
</template >
8
8
<script setup lang="ts">
9
- import { ImageApi , ImageVO } from ' @/api/ai/image'
9
+ import { ImageApi , ImageVO , ImageMidjourneyButtonsVO } from ' @/api/ai/image'
10
10
11
11
/** 属性 */
12
- // TODO @fan:queryParams 里面搞分页哈。
13
12
const pageNo = ref <number >(1 )
14
13
const pageSize = ref <number >(20 )
15
14
const publicList = ref <ImageVO []>([])
16
15
17
16
/** 获取数据 */
18
17
const getListData = async () => {
19
- const res = await ImageApi .getImagePagePublic ({ pageNo: pageNo .value , pageSize: pageSize .value })
20
- publicList .value = res .list as ImageVO []
18
+ const res = await ImageApi .getImagePagePublic ({pageNo: pageNo .value , pageSize: pageSize .value });
19
+ publicList .value = res .list as ImageVO [];
21
20
console .log (' publicList.value' , publicList .value )
22
21
}
23
22
@@ -26,16 +25,38 @@ onMounted(async () => {
26
25
})
27
26
</script >
28
27
<style scoped lang="scss">
29
- .card-list {
30
- // display: flex;
31
- // flex-direction: column;
32
- column-count : 4 ;
33
- column-gap : 3px ;
28
+
29
+ .gallery {
30
+ display : grid ;
31
+ grid-template-columns : repeat (auto-fill , minmax (200px , 1fr ));
32
+ gap : 10px ;
33
+ // max-width: 1000px;
34
+ padding : 20px ;
35
+ background-color : #fff ;
36
+ box-shadow : 0 0 10px rgba (0 ,0 ,0 ,0.1 );
37
+ }
38
+
39
+ .gallery-item {
40
+ position : relative ;
41
+ overflow : hidden ;
42
+ background : #f0f0f0 ;
43
+ cursor : pointer ;
44
+ transition : transform 0.3s ;
45
+ }
46
+
47
+ .gallery-item img {
48
+ width : 100% ;
49
+ height : auto ;
50
+ display : block ;
51
+ transition : transform 0.3s ;
52
+ }
53
+
54
+ .gallery-item :hover img {
55
+ transform : scale (1.1 );
34
56
}
35
57
36
- .card {
37
- .img {
38
- width : 50% ;
39
- }
58
+ .gallery-item :hover {
59
+ transform : scale (1.05 );
40
60
}
61
+
41
62
</style >
0 commit comments