Index.stories.js 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. // import * as React from 'react';
  2. // import styled from 'styled-components';
  3. // import { storiesOf } from '@storybook/react';
  4. // import { PhotoProvider, PhotoConsumer, PhotoSlider } from 'react-photo-view';
  5. // import 'react-photo-view/dist/index.css';
  6. // import image1 from './static/1.jpg';
  7. // import image2 from './static/2.jpg';
  8. // import image3 from './static/3.jpg';
  9. // import image4 from './static/4.jpg';
  10. // import image5 from './static/5.jpg';
  11. // import image6 from './static/6.jpg';
  12. // import image7 from './static/7.jpg';
  13. // import image8 from './static/8.jpg';
  14. // import defaultPhoto from './static/default-photo.svg';
  15. //
  16. // const photoImages = [
  17. // image1,
  18. // image2,
  19. // image3,
  20. // image4,
  21. // image5,
  22. // image6,
  23. // image7,
  24. // image8,
  25. // ];
  26. //
  27. // const ImageList = styled.div`
  28. // padding: 40px;
  29. // display: flex;
  30. // flex-wrap: wrap;
  31. // align-items: center;
  32. // `;
  33. //
  34. // const ViewBox = styled.div`
  35. // margin-right: 20px;
  36. // margin-bottom: 20px;
  37. // width: 100px;
  38. // height: 100px;
  39. // cursor: pointer;
  40. // background: url('${props => props.viewImage}') no-repeat center;
  41. // background-size: cover;
  42. // `;
  43. //
  44. // const Button = styled.button`
  45. // padding: 6px 10px;
  46. // border: 1px solid #ccc;
  47. // border-radius: 2px;
  48. // cursor: pointer;
  49. //
  50. // &:not(:last-child) {
  51. // margin-right: 12px;
  52. // }
  53. //
  54. // &[type='primary'] {
  55. // background: deepskyblue;
  56. // border-color: deepskyblue;
  57. // color: white;
  58. // }
  59. // `;
  60. //
  61. // const DefaultImage = styled.img`
  62. // width: 100px;
  63. // height: 100px;
  64. // `;
  65. //
  66. // storiesOf('react-photo-view', module)
  67. // .add('默认展示', () => (
  68. // <PhotoProvider>
  69. // <ImageList>
  70. // {photoImages.map((item, index) => (
  71. // <PhotoConsumer key={index} src={item} intro={item}>
  72. // <ViewBox viewImage={item} />
  73. // </PhotoConsumer>
  74. // ))}
  75. // </ImageList>
  76. // </PhotoProvider>
  77. // ))
  78. // .add('两张预览', () => (
  79. // <PhotoProvider>
  80. // <ImageList>
  81. // {photoImages.map((item, index) => (
  82. // <PhotoConsumer key={index} src={item}>
  83. // {index < 2 ? <ViewBox viewImage={item} /> : undefined}
  84. // </PhotoConsumer>
  85. // ))}
  86. // </ImageList>
  87. // </PhotoProvider>
  88. // ))
  89. // .add('通过按钮触发', () => (
  90. // <PhotoProvider>
  91. // <ImageList>
  92. // <PhotoConsumer src={image4}>
  93. // <Button>打开预览</Button>
  94. // </PhotoConsumer>
  95. // </ImageList>
  96. // </PhotoProvider>
  97. // ))
  98. // .add('自定义加载失败', () => (
  99. // <ImageList>
  100. // <PhotoProvider>
  101. // <PhotoConsumer src={null}>
  102. // <Button>无默认图</Button>
  103. // </PhotoConsumer>
  104. // </PhotoProvider>
  105. // <PhotoProvider brokenElement={<DefaultImage src={defaultPhoto} />}>
  106. // <PhotoConsumer src={null}>
  107. // <Button>自定义默认图</Button>
  108. // </PhotoConsumer>
  109. // </PhotoProvider>
  110. // </ImageList>
  111. // ))
  112. // .add('受控 PhotoSlider', () => {
  113. // const [visible, setVisible] = React.useState(false);
  114. // const [photoIndex, setPhotoIndex] = React.useState(0);
  115. //
  116. // function handleShowSlider() {
  117. // setVisible(true);
  118. // }
  119. // function handleCloseSlider() {
  120. // setVisible(false);
  121. // }
  122. // return (
  123. // <ImageList>
  124. // <Button onClick={() => setPhotoIndex(2)}>setPhotoIndex(2)</Button>
  125. // <Button onClick={() => setPhotoIndex(4)}>setPhotoIndex(4)</Button>
  126. // <Button onClick={handleShowSlider} type="primary">
  127. // 打开 PhotoSlider
  128. // </Button>
  129. //
  130. // <PhotoSlider
  131. // images={photoImages.map(item => ({ src: item }))}
  132. // visible={visible}
  133. // onClose={handleCloseSlider}
  134. // index={photoIndex}
  135. // onIndexChange={setPhotoIndex}
  136. // />
  137. // </ImageList>
  138. // );
  139. // });