Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Hooke
/
hager
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
hookehuyr
2024-10-24 12:50:15 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
95b4220ec36139de1f51cf684c0a0321ab644260
95b4220e
1 parent
0b86ce3d
fix 产品详情缩略图和显示调整
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
42 additions
and
31 deletions
src/components/hagerCarousel.vue
src/views/product/detail.vue
src/components/hagerCarousel.vue
View file @
95b4220
<!--
* @Date: 2024-09-27 19:49:03
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2024-10-2
3 17:25:41
* @LastEditTime: 2024-10-2
4 12:47:42
* @FilePath: /hager/src/components/hagerCarousel.vue
* @Description: 文件描述
-->
<template>
<div class="hager-carousel">
<div class="image-switcher">
<!-- 缩略图区域 -->
<div class="thumbnail-container">
<!-- 上箭头 -->
<div class="arrow-up" @click="prevImage"><i class="el-icon-arrow-up" style="font-size: 1.35rem;"></i></div>
<!-- 缩略图列表 -->
<div class="thumbnails">
<div
v-for="(image, index) in visibleThumbnails"
:key="index"
:class="['thumbnail', { active: selectedImage === (startIndex + index) }]"
@click="selectImage(startIndex + index)"
>
<img :src="image" alt="thumbnail">
<el-row :gutter="0">
<el-col :span="4">
<!-- 缩略图区域 -->
<div class="thumbnail-container">
<!-- 上箭头 -->
<div class="arrow-up" @click="prevImage"><i class="el-icon-arrow-up" style="font-size: 1.35rem;"></i></div>
<!-- 缩略图列表 -->
<div class="thumbnails">
<div
v-for="(image, index) in visibleThumbnails"
:key="index"
:class="['thumbnail', { active: selectedImage === (startIndex + index) }]"
@click="selectImage(startIndex + index)"
>
<img :src="image" alt="thumbnail">
</div>
</div>
<!-- 下箭头 -->
<div class="arrow-down" @click="nextImage"><i class="el-icon-arrow-down" style="font-size: 1.35rem;"></i></div>
</div>
</div>
<!-- 下箭头 -->
<div class="arrow-down" @click="nextImage"><i class="el-icon-arrow-down" style="font-size: 1.35rem;"></i></div>
</div>
</el-col>
<el-col :span="20">
<!-- 右边大图区域 -->
<div class="main-image" :class="{ 'fade-out': isTransitioning, 'fade-in': !isTransitioning }" :style="{ backgroundImage: `url(${images[selectedImage]})`}">
<!-- <img :src="images[selectedImage]" alt="main image"> -->
</div>
</el-col>
</el-row>
<!-- 右边大图区域 -->
<div class="main-image" :class="{ 'fade-out': isTransitioning, 'fade-in': !isTransitioning }" :style="{ backgroundImage: `url(${images[selectedImage]})`}">
<!-- <img :src="images[selectedImage]" alt="main image"> -->
</div>
</div>
</div>
</template>
...
...
@@ -114,8 +120,8 @@ export default {
<style lang="less" scoped>
.hager-carousel {
.image-switcher {
display: flex;
align-items: center;
//
display: flex;
//
align-items: center;
}
.thumbnail-container {
...
...
@@ -163,13 +169,13 @@ export default {
}
.main-image {
width: 1
8rem
;
height: 1
8
rem;
width: 1
00%
;
height: 1
2
rem;
position: relative;
transition: opacity 0.5s ease-in-out; /* 大图切换时的淡入淡出效果 */
opacity: 1;
background-position: center;
background-size:
80%
;
background-size:
contain
;
background-repeat: no-repeat;
}
...
...
src/views/product/detail.vue
View file @
95b4220
<!--
* @Date: 2024-09-29 14:26:41
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2024-10-24 12:
27:3
4
* @LastEditTime: 2024-10-24 12:
31:2
4
* @FilePath: /hager/src/views/product/detail.vue
* @Description: 文件描述
-->
...
...
@@ -87,7 +87,7 @@
<i v-else @click="checkItem(item)" class="el-icon-folder download-unchecked"></i>
</el-col>
<el-col :span="is_xs ? 20 : 22">
<div
style="display: flex; justify-content: space-between; align-items: center;
">
<div
class="info-list-title-content
">
<div>
<i class="el-icon-document" style="font-size: 1.35rem;"></i>
{{ item.name }}
...
...
@@ -348,6 +348,11 @@ export default {
// display: flex;
// align-items: center;
}
.info-list-title-content {
display: flex;
justify-content: space-between;
align-items: center;
}
.info-list-control {
display: flex;
justify-content: flex-end;
...
...
Please
register
or
login
to post a comment