Brak opisu

MinJieLiu 33db6485e0 doc 5 lat temu
example 33db6485e0 doc 5 lat temu
src 33db6485e0 doc 5 lat temu
.editorconfig d413fb3e3b init 7 lat temu
.gitignore 1ea3975742 config 6 lat temu
.npmignore 1ea3975742 config 6 lat temu
.prettierrc dc11408721 init-photo 7 lat temu
.travis.yml 9b61d4b1be upgrade 5 lat temu
LICENSE d413fb3e3b init 7 lat temu
README.md 33db6485e0 doc 5 lat temu
package.json 33db6485e0 doc 5 lat temu
rollup.config.js 2bd4f16f37 use-less 5 lat temu
tsconfig.json 1ea3975742 config 6 lat temu
tsconfig.test.json 1ea3975742 config 6 lat temu
yarn.lock 9ee30972ba 完善多指触控体验 5 lat temu

README.md

react-photo-view

一款精致的 React 的图片预览组件

npm npm

Demo: https://minjieliu.github.io/react-photo-view

特性

  1. 支持左右切换导航、上/下滑关闭、双击放大/缩小、双指放大/缩小/平移、键盘导航/关闭、点击切换控件等
  2. 打开/关闭缩放动画
  3. 自适应图像适应
  4. 支持桌面端(兼容 IE10+)/移动端
  5. 轻量的体积
  6. 高度的扩展性
  7. 支持服务端渲染
  8. 基于 typescript 友好的语法提示

开始使用

yarn add react-photo-view

基本:

import { PhotoProvider, PhotoConsumer } from 'react-photo-view';
import 'react-photo-view/dist/index.css';

function ImageView() {
  return (
    <PhotoProvider>
      {photoImages.map((item, index) => (
        <PhotoConsumer key={index} src={item} intro={item}>
          <img src={item} alt="" />
        </PhotoConsumer>
      ))}
    </PhotoProvider>
  );
}

API

PhotoProvider

名称 类型 必选 描述
children React.ReactNode
maskClosable boolean 背景可点击关闭,默认 true
photoClosable boolean 图片点击可关闭,默认 false
bannerVisible boolean 导航条 visible,默认 true
introVisible boolean 简介 visible,默认 true
overlayRender (overlayProps) => React.ReactNode 自定义渲染
className string className
maskClassName string 遮罩 className
viewClassName string 图片容器 className
imageClassName string 图片 className
loadingElement JSX.Element 自定义 loading
brokenElement JSX.Element 加载失败 Element

PhotoConsumer

名称 类型 必选 描述
src string 图片地址
intro React.ReactNode 图片介绍
children React.ReactElement

注意:展开/关闭动画源位置需要PhotoConsumerchildren 提供真实 DOM 的 Ref,比如可以使用 React.forwardRef API。

PhotoSlider

继承自 PhotoProvider。手动控制 react-photo-view 的展现与隐藏

名称 类型 必选 描述
images dataType[] 图片列表
index number 图片当前索引
visible boolean 可见
onClose (evt) => void 关闭事件
onIndexChange Function 索引改变回调

谁在使用