Uniapp中使用fancyapps图片画廊幻灯片

 注:需要先在HbuildX中安装内置终端。

然后在项目根目录运行npm init -y

然后再按照fancyapps官网文档中的命令安装用到的包

npm install @fancyapps/ui
// or
yarn add  @fancyapps/ui

 一:HTML部分

<view class="productList">
	<view class="item" v-for="(item, index) in productList" :key="item.id"  data-fancybox="gallery" :href="item.thumb">
		<image :src="item.thumb" mode="widthFix" class="w100"></image>
		<text class="title">{{ item.title }}</text>
	</view>
</view>

 关键是加上了:data-fancybox="gallery" :href="item.thumb"

二:JS部分,直接在script中引入

import { Fancybox, Carousel, Panzoom } from "@fancyapps/ui";

三:Style部分,直接在style中引入,(不介意的话就直接用CDN就行)

@import url('https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.css');

四:在uniapp页面的onLoad里面写入fancyapps的JS代码,(我都是在示例中直接复制的)

Fancybox.bind('[data-fancybox="gallery"]', {
			  dragToClose: false,
			
			  Toolbar: false,
			  closeButton: "top",
			
			  Image: {
			    zoom: false,
			  },
			
			  on: {
			    initCarousel: (fancybox) => {
			      const slide = fancybox.Carousel.slides[fancybox.Carousel.page];
			
			      fancybox.$container.style.setProperty(
			        "--bg-image",
			        `url("${slide.$thumb.src}")`
			      );
			    },
			    "Carousel.change": (fancybox, carousel, to, from) => {
			      const slide = carousel.slides[to];
			
			      fancybox.$container.style.setProperty(
			        "--bg-image",
			        `url("${slide.$thumb.src}")`
			      );
			    },
			  },
			});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值