安装
npm install --save react-wx-images-viewer
使用
import WxImageViewer from 'react-wx-images-viewer';
class App extends Component {
state = {
imags: [
require('./assets/2.jpg'),
require('./assets/1.jpg'),
require('./assets/0.jpg'),
require('./assets/3.jpg'),
require('./assets/4.jpg'),
],
index: 0,
isOpen: false
};
onClose = () =>{
this.setState({
isOpen: false
})
}
openViewer (index){
this.setState({
index,
isOpen: true
})
}
render() {
const {
imags,
index,
isOpen
} = this.state;
return (
<div className="app">
<div className="img-list">
{/*直接打开*/}
<button onClick={this.openViewer.bind(this, 0)}>点击打开图片</button>
{
this.state.imags.map((item, index) => {
return <div className="img" key={item}>
<img src={item} alt="" onClick={this.openViewer.bind(this, index)} width="100%" height="auto" className=""/>
</div>
})
}
</div>
{
isOpen ? <WxImageViewer onClose={this.onClose} urls={this.state.imags} index={index}/> : ""
}
</div>
)
}
}
export default App;
接口
Description | Type | default | Remarks | |
---|---|---|---|---|
maxZoomNum | 图片放大最大倍数 | Number | 4 | |
zIndex | 组件图层深度 | Number | 100 | |
index | 初始显示图片序号 | Number | 0 | |
gap | 图片之间的间隙 | Number | 10 | unit is pixel |
urls | 图片 URL 数组 | Array | suggest the array length do not more than 10 | |
onClose | 关闭的回调处理函数 | Function | 需要通过该函数将组件从渲染中移除 | |
loading | 自定义图片加载组件 | component | WxImageViewer default Loading | TODO |
pointer | 自定义指示器组件 | component | WxImageViewer default Pointer | TODO |
https://segmentfault.com/a/1190000010090233