Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wanjj_1210
ant-design
提交
56b06e16
A
ant-design
项目概览
wanjj_1210
/
ant-design
与 Fork 源项目一致
从无法访问的项目Fork
通知
10
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
ant-design
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
56b06e16
编写于
8月 18, 2015
作者:
A
afc163
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
get mousePosition from mousemove listener for more elegant API
上级
d098c099
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
40 addition
and
15 deletion
+40
-15
components/modal/demo/basic.md
components/modal/demo/basic.md
+3
-5
components/modal/demo/custom.md
components/modal/demo/custom.md
+2
-4
components/modal/demo/footer.md
components/modal/demo/footer.md
+2
-4
components/modal/index.jsx
components/modal/index.jsx
+33
-2
未找到文件。
components/modal/demo/basic.md
浏览文件 @
56b06e16
...
...
@@ -13,12 +13,11 @@ var Test = React.createClass({
getInitialState
(){
return
{
visible
:
false
}
}
;
},
showModal
(
e
)
{
showModal
()
{
this
.
setState
({
visible
:
true
,
mousePosition
:
{
x
:
e
.
pageX
,
y
:
e
.
pageY
}
visible
:
true
});
},
handleOk
()
{
...
...
@@ -32,7 +31,6 @@ var Test = React.createClass({
<
button
className
=
"ant-btn ant-btn-primary"
onClick
=
{
this
.
showModal
}
>
显示对话框
</
button
>
<
Modal
title
=
"第一个 Modal"
visible
=
{
this
.
state
.
visible
}
mousePosition
=
{
this
.
state
.
mousePosition
}
onOk
=
{
this
.
handleOk
}
onCancel
=
{
this
.
handleCancel
}
>
<
p
>
对话框的内容
</
p
>
...
...
components/modal/demo/custom.md
浏览文件 @
56b06e16
...
...
@@ -17,10 +17,9 @@ var Test = React.createClass({
visible
:
false
};
},
showModal
(
e
)
{
showModal
()
{
this
.
setState
({
visible
:
true
,
mousePosition
:{
x
:
e
.
pageX
,
y
:
e
.
pageY
}
visible
:
true
});
},
handleOk
()
{
...
...
@@ -40,7 +39,6 @@ var Test = React.createClass({
return
<
div
>
<
button
className
=
"ant-btn ant-btn-primary"
onClick
=
{
this
.
showModal
}
>
显示对话框
</
button
>
<
Modal
title
=
"对话框标题"
mousePosition
=
{
this
.
state
.
mousePosition
}
visible
=
{
this
.
state
.
visible
}
onOk
=
{
this
.
handleOk
}
onCancel
=
{
this
.
handleCancel
}
>
...
...
components/modal/demo/footer.md
浏览文件 @
56b06e16
...
...
@@ -16,10 +16,9 @@ var Test = React.createClass({
visible
:
false
};
},
showModal
(
e
)
{
showModal
()
{
this
.
setState
({
visible
:
true
,
mousePosition
:{
x
:
e
.
pageX
,
y
:
e
.
pageY
}
visible
:
true
});
},
handleOk
()
{
...
...
@@ -38,7 +37,6 @@ var Test = React.createClass({
</
button
>
<
Modal
ref
=
"modal"
visible
=
{
this
.
state
.
visible
}
mousePosition
=
{
this
.
state
.
mousePosition
}
title
=
"对话框标题"
onOk
=
{
this
.
handleOk
}
onCancel
=
{
this
.
handleCancel
}
footer
=
{
[
<
button
key
=
"back"
className
=
"ant-btn ant-btn-lg"
onClick
=
{
this
.
handleCancel
}
>
返 回
</
button
>,
...
...
components/modal/index.jsx
浏览文件 @
56b06e16
...
...
@@ -3,6 +3,21 @@ import Dialog from 'rc-dialog';
function
noop
()
{
}
function
wrap
(
standard
,
fallback
)
{
return
function
(
el
,
evtName
,
listener
,
useCapture
)
{
if
(
el
[
standard
])
{
el
[
standard
](
evtName
,
listener
,
useCapture
);
}
else
if
(
el
[
fallback
])
{
el
[
fallback
](
'
on
'
+
evtName
,
listener
);
}
};
}
let
eventListener
=
{
add
:
wrap
(
'
addEventListener
'
,
'
attachEvent
'
),
remove
:
wrap
(
'
removeEventListener
'
,
'
detachEvent
'
)
};
export
default
React
.
createClass
({
getDefaultProps
()
{
return
{
...
...
@@ -19,6 +34,21 @@ export default React.createClass({
};
},
onDocumentMousemove
(
e
)
{
this
.
mousePosition
=
{
x
:
e
.
pageX
,
y
:
e
.
pageY
};
},
componentWillMount
()
{
eventListener
.
add
(
document
,
'
mousemove
'
,
this
.
onDocumentMousemove
);
},
componentWillUnmount
()
{
eventListener
.
remove
(
document
,
'
mousemove
'
,
this
.
onDocumentMousemove
);
},
handleCancel
()
{
this
.
props
.
onCancel
();
this
.
setState
({
...
...
@@ -60,7 +90,8 @@ export default React.createClass({
];
let
footer
=
props
.
footer
||
defaultFooter
;
let
visible
=
this
.
state
.
visible
;
return
<
Dialog
transitionName
=
"zoom"
onClose
=
{
this
.
handleCancel
}
maskAnimation
=
"fade"
width
=
"500"
footer
=
{
footer
}
{
...
props
}
visible
=
{
visible
}
/>;
return
<
Dialog
transitionName
=
"zoom"
onClose
=
{
this
.
handleCancel
}
maskAnimation
=
"fade"
width
=
"500"
footer
=
{
footer
}
{
...
props
}
visible
=
{
visible
}
mousePosition
=
{
this
.
mousePosition
}
/>;
}
});
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录