Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
H
H5Public
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
CI / CD
CI / CD
流水线
作业
日程
统计图
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
前端开发小组
H5Public
Commits
73225443
提交
73225443
authored
6月 17, 2020
作者:
王绍森
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加ImageGallery组件
上级
6507272a
隐藏空白字符变更
内嵌
并排
正在显示
2 个修改的文件
包含
75 行增加
和
2 行删除
+75
-2
index.tsx
baseComponents/ImageGallery/index.tsx
+71
-0
index.js
baseComponents/ImageLoader/index.js
+4
-2
没有找到文件。
baseComponents/ImageGallery/index.tsx
0 → 100644
浏览文件 @
73225443
import
React
from
'react'
;
import
ImageLoader
from
'../ImageLoader'
import
ImageViewer
from
'../ImageViewer'
interface
ImageLoaderProps
{
height
:
string
;
width
:
string
,
divStyle
:
React
.
CSSProperties
;
}
export
interface
ImageGalleryProps
{
urls
:
string
[];
imageLoaderProps
:
ImageLoaderProps
;
wrapperStyle
:
React
.
CSSProperties
;
}
interface
ImageGalleryState
{
index
:
number
;
isOpen
:
boolean
;
}
export
default
class
ImageGallery
extends
React
.
Component
<
ImageGalleryProps
,
ImageGalleryState
>
{
constructor
(
props
)
{
super
(
props
);
this
.
state
=
{
index
:
0
,
isOpen
:
false
,
}
}
handleClick
=
(
idx
:
number
)
=>
{
this
.
setState
({
index
:
idx
,
isOpen
:
true
})
}
handleClose
=
()
=>
{
this
.
setState
({
isOpen
:
false
})
}
render
()
{
const
{
urls
,
imageLoaderProps
,
wrapperStyle
,
}
=
this
.
props
;
const
{
isOpen
,
index
}
=
this
.
state
;
const
defaultImageLoaderProps
=
{
width
:
'90px'
,
height
:
'90px'
,
divStyle
:
{
textAlign
:
'center'
,
},
...
imageLoaderProps
,
};
const
defaultWrapperStyle
=
{
padding
:
6
,
background
:
'white'
,
border
:
'1px solid #eee'
,
borderRadius
:
4
,
display
:
'inline-block'
,
margin
:
6
}
return
(
<>
{
urls
.
map
((
url
,
idx
)
=>
(
<
div
style=
{
defaultWrapperStyle
}
key=
{
url
}
>
<
ImageLoader
onClick=
{
()
=>
this
.
handleClick
(
idx
)
}
url=
{
url
}
{
...
defaultImageLoaderProps
}
/>
</
div
>
))
}
{
isOpen
?
<
ImageViewer
urls=
{
urls
}
index=
{
index
}
onClose=
{
this
.
handleClose
}
/>
:
null
}
</>
);
}
}
baseComponents/ImageLoader/index.js
浏览文件 @
73225443
...
...
@@ -30,13 +30,15 @@ export default class ImageLoader extends React.Component {
}
render
()
{
const
{
width
,
height
,
url
,
divStyle
}
=
this
.
props
;
const
{
width
,
height
,
url
,
divStyle
,
onClick
}
=
this
.
props
;
return
(
<
div
style
=
{{
width
,
height
,
lineHeight
:
height
,
...
divStyle
,
}}
>
}}
onClick
=
{
onClick
}
>
<
img
src
=
{
url
}
alt
=
{
'预览图片'
}
style
=
{{
visibility
:
'hidden'
}}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论