首页 > 其他分享 >vue "vue-awesome-swiper": "^4.1.1" 的使用

vue "vue-awesome-swiper": "^4.1.1" 的使用

时间:2023-03-27 11:45:37浏览次数:30  
标签:album vue 4.1 缩略图 awesome uviewui cdn swiper

<!-- swiper1 -->
            <swiper class="swiper gallery-top" :options="swiperOptionTop" ref="swiperTop">
                <swiper-slide v-for="item in img_list" :key="item.id" class="slide-1">
                  <img :src="item.imageURL" alt="" style="width:100%">
                </swiper-slide>
                <div class="swiper-button-next swiper-button-white" slot="button-next"></div>
                <div class="swiper-button-prev swiper-button-white" slot="button-prev"></div>
            </swiper>
            <!-- swiper2 Thumbs -->
            <swiper class="swiper gallery-thumbs" :options="swiperOptionThumbs" ref="swiperThumbs">
                <swiper-slide v-for="item in img_list" :key="item.id" class="slide-1">
                  <img :src="item.imageURL" alt="" style="width:100%">
                </swiper-slide>
            </swiper>
<script> 
//使用swiper
import { Swiper, SwiperSlide } from 'vue-awesome-swiper'
import 'swiper/css/swiper.css'
export default {
  name: 'index',
  components: {
    Swiper,
    SwiperSlide
  },
  data() {
    return {
      img_list:[
        {id:1,imageURL:"https://cdn.uviewui.com/uview/album/1.jpg"},
        {id:2,imageURL:"https://cdn.uviewui.com/uview/album/1.jpg"},
        {id:3,imageURL:"https://cdn.uviewui.com/uview/album/1.jpg"},
        {id:4,imageURL:"https://cdn.uviewui.com/uview/album/1.jpg"}
      ],//图片
       swiperOptionTop: {
            loop: true,
            loopedSlides: 5, // looped slides should be the same
            spaceBetween: 10,
            // 左右两边的点击事件
            navigation: {
                nextEl: '.swiper-button-next',
                prevEl: '.swiper-button-prev'
            }
        },
        swiperOptionThumbs: {
            loop: true, // 是否可循环
            loopedSlides: 5, // looped slides should be the same
            spaceBetween: 10, // 缩略图之间的间隙大小
            centeredSlides: true, // 大图对应的缩略图位置显示在中间
            slidesPerView: 5, // 每一页显示下方缩略图的数量,auto :自动显示所有数量;输入number(如1、2、3等)则是手动定义显示的数量
            touchRatio: 0.2, // 触控比例,可理解为拖动缩略图的距离,默认值为1
            slideToClickedSlide: true //点击其他缩略图可跳转
        }
    }
  },
.swiper {
    margin-bottom: 10px;
    .swiper-slide {
        // background-size: cover;
        background-position: center;
    }

    &.gallery-top {
        height: 80%;
        width: 100%;
    }
    &.gallery-thumbs {
        height: 20%;
        width: 100%;
        box-sizing: border-box;
        padding: gap 0;
    }
    &.gallery-thumbs .swiper-slide { //等比例缩小
        opacity: 0.4;
        height: 68px;
        width: 68px;
        border: 1px solid #eee;
        background-size: contain;
    }
    &.gallery-thumbs .swiper-slide-active {
        opacity: 1;
    }
}

 

标签:album,vue,4.1,缩略图,awesome,uviewui,cdn,swiper
From: https://www.cnblogs.com/xm666/p/17261035.html

相关文章

  • vue3中在setup方法中使用 provide,inject,组件上下层,直接传值和方法
    一个简简单单的案例app.vue<template><div>app<Second/></div></template><script>import{provide}from'vue';importSecondfrom'./compon......
  • vue3获取url参数的值
    <scriptsetupname="Welcome">import{onMounted}from'vue';import{useRouter}from'vue-router';const$router=useRouter();onMounted(()=>{consol......
  • 【坑】 mpvue 编译报错Error: [mpvue-loader] need "fileExt" option in file "build/
    运行命令C:\Users\luozhuang\demo2>npmrunbuild出错提示:ERRORin./node_modules/mpvue-entry/dist/pagesMemberDistributionIndex.jsModulebuildfailed:Error:[mp......
  • Vue3 脚手架
    1.使用vue-cli创建脚手架PowerShellvuecreatevue3_test#创建vue3工程,vue-cli版本必须在4.5.13以上PowerShellnpmrunserve#运行工程2.使用......
  • 对于Vue3和Ts的心得和思考
    作者:京东物流吴云阔1前言Vue3已经正式发布了一段时间了,各种生态已经成熟。最近使用taro+vue3重构冷链的小程序,经过了一段时间的开发和使用,有了一些自己的思考。总的来说,Vu......
  • 对于Vue3和Ts的心得和思考
    作者:京东物流吴云阔1前言Vue3已经正式发布了一段时间了,各种生态已经成熟。最近使用taro+vue3重构冷链的小程序,经过了一段时间的开发和使用,有了一些自己的思考。总的来......
  • Vue中获取method方法return返回值--常用于请求成功后回调
    mounted:(){this.getList('',(data)=>{console.log(data);})}methods:{getList(condition){get_list({...condition}).then(res=>{......
  • Vue2模版编译(AST、Optimize 、Render)
    在Vue$mount过程中,我们需要把模版编译成render函数,整体实现可以分为三部分:parse:解析模版template生成AST语法树optimize:优化AST语法树,标记静态节点codegen:把优化......
  • vue3 + vite 调试时断点位置错误
    vite-plugin-vue-setup-extend(版本0.4.0)插件的问题,删掉就好了。该插件用于解决scriptsetup语法糖下,不方便直接指定name名称的问题。在vite/plugins/index.js文件中......
  • vue 组件通信
    1.子组件间通信(defineEmits+defineProps)1.1实现效果在一个子组件的输入框中输入数据,在另一个子组件上显示.如下图:1.2defineEmits和defineProps的TS使......