H5 图片查看器

H5图片查看器

场景

最近需求涉及图片查看的操作,UI设计了一张图片查看的图,要求点击查看图片并支持左右滑动,由于antd-mobile v2版本没有类似组件,所以通过套娃的方式套了一个。

套娃结果:UI还是挺满意😂😂。

GitHub

Codesandbox 体验地址

依赖

antd-mobile@2.3.4

预览图

在这里插入图片描述

套娃流程

  • 首先通过 Modal 用来实现查看的遮罩
  • 接着在 Modal 中套一个 Carousel 用来显示图片
  • 最后在 Carousel 中布局并实现交互效果
  • 注:需修改abtd-mobile组件本身的css

使用

  1. 数据源
const demoImages = [
     {
       url:
         "https://images.unsplash.com/photo-1620476214170-1d8080f65cdb?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=3150&q=80",
       title: "楼层",
       describe: "楼层楼层楼层"
     },
     {
       url:
         "https://images.unsplash.com/photo-1601128533718-374ffcca299b?ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&ixlib=rb-1.2.1&auto=format&fit=crop&w=3128&q=80",
       title: "风景",
       describe: "风景风景风景风景风景风景风景"
     },
     // ...
];
  1. 组件
  <ImageViewer
      visible={boolean}
      selectedIndex={1}
      images={demoImages}
      onIndexChange={(index)=>{}}
      onClose={(bool) => {}}
    />
  1. 参数
属性说明类型默认值
images图片资源的 url 列表[]-
visible是否显示booleanfalse
selectedIndex默认显示第几张图片number0
onClose关闭触发(false) => void-
onIndexChange切换图片时触发(index: number) => void-

总结

  • 管理组件状态 useState
  • 执行副作用 useEffect
  • 缓存优化 useMemo
  • 数据容器 useRef
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值