vue项目中如何结合swiper
实现图片左右滑动切换,下面编程教程网小编给大家详细介绍一下实现代码!
1、安装脚手架
npm install vue-awesome-swiper --save
2、main.js全局引用
import VueAwesomeSwiper from 'vue-awesome-swiper'
Vue.user(VueAwesomeSwiper)
import 'dist/swiper/swiper.css'
3、页面实现代码
<template>
<div>
<label>{{ time }}</label>
<div id="star-pic-vue">
<template v-if="data">
<img
v-for="(item, index) in images"
:src="item.url"
:key="index"
id="contract_url"
@click="enlargePic(index)"
/>
<template v-if="isDialogShow"> </template>
<el-dialog
:visible.sync="centerDialogVisible"
width="100%"
modal
close-on-click-modal
custom-class="dialog"
>
<swiper :options="swiperOption" ref="mySwiper" style="height: 100%;">
<swiper-slide v-for="(img, index) in images" :key="index">
<div>
<img :src="img.url" alt="" />
</div>
</swiper-slide>
</swiper>
</el-dialog>
</template>
</div>
</div>
</template>
<script>
import { swiper, swiperSlide } from "vue-awesome-swiper";
export default {
name: "PictureComponent",
props: ["data", "maxShow", "time"],
data() {
return {
centerDialogVisible: false,
showPic: "",
isDialogShow: false,
activeIndex: 1,
startX: 0,
swiperOption: {
width: window.innerWidth,
zoom: true,
initialSlide: 0
}
};
},
computed: {
images() {
if (this.data instanceof Array && this.data.length > 2) {
var value = this.data;
return value.splice(0, this.maxShow);
} else {
return this.data;
}
}
},
components: {
swiper,
swiperSlide
},
methods: {
// 放大图片
enlargePic(i) {
this.activeIndex = i;
this.isDialogShow = true;
this.$nextTick(() => {
var swiper = this.$refs.mySwiper.swiper;
swiper.activeIndex = i;
});
this.centerDialogVisible = true;
}
}
};
</script>
<style>
.timeline {
display: block;
margin: 10px 20px 5px;
}
#star-pic-vue .el-dialog__wrapper {
position: fixed;
top: 0;
right: 0;
bottom: 0;
left: 0;
overflow: auto;
margin: 0;
background: #171717;
}
#star-pic-vue {
width: 100%;
height: auto;
display: flex;
flex-wrap: wrap;
justify-content: stretch;
padding: 3px 13px;
img {
width: 82px;
height: 80px;
margin: 4px 0px 0px;
padding-right: 2px;
}
.dialog {
img {
width: 100%;
height: 100%;
margin: 0;
}
}
.el-carousel__item h3 {
color: #475669;
font-size: 18px;
opacity: 0.75;
line-height: 300px;
margin: 0;
height: 100%;
width: 100%;
}
.el-dialog__header {
display: none;
}
.el-dialog__body {
padding: 0 !important;
margin: 0 !important;
height: 460px;
background: #171717;
}
.el-carousel {
height: 100%;
}
.el-carousel__container {
height: 410px;
}
.el-carousel__indicators--outside {
margin-top: 20px;
}
}
</style>
以上是编程学习网小编为您介绍的“vue项目如何结合swiper实现图片左右滑动切换”的全面内容,想了解更多关于 vuejs 内容,请继续关注编程基础学习网。
沃梦达教程
本文标题为:vue项目如何结合swiper实现图片左右滑动切换
基础教程推荐
猜你喜欢
- Vue页面跳转传递参数及接收 2023-10-08
- 基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标 2024-01-07
- CSS实现鼠标滑过鼠标点击代码写法 2024-01-25
- 浅析webpack 如何优雅的使用tree-shaking(摇树优化) 2024-04-23
- css Sub-Pixel Bug?! 2023-12-23
- Ajax解决缓存的5种方法总结(推荐) 2023-01-26
- Javascript运行机制之Event Loop 2023-08-08
- js鼠标点击图片实现随机变换图片的方法 2024-01-07
- vue cli3 + ts 打包之后,不显示页面 2023-10-08
- 限制div高度当内容多了溢出时显示滚动条 2024-03-09