ant-design/components/modal/demo/footer.md

60 lines
1.4 KiB
Markdown
Raw Normal View History

2016-03-31 09:40:55 +08:00
---
order: 2
title: 自定义页脚
---
2015-06-12 17:37:39 +08:00
2015-06-12 17:44:29 +08:00
更复杂的例子,自定义了页脚的按钮,点击提交后进入 loading 状态,完成后关闭。
2015-06-12 17:37:39 +08:00
````jsx
import { Modal, Button } from 'antd';
2015-06-12 17:37:39 +08:00
const Test = React.createClass({
getInitialState() {
2015-06-12 17:37:39 +08:00
return {
2015-06-12 23:31:44 +08:00
loading: false,
2015-06-14 13:20:35 +08:00
visible: false
2015-06-12 17:37:39 +08:00
};
},
showModal() {
this.setState({
visible: true
});
2015-06-12 17:37:39 +08:00
},
handleOk() {
2015-06-12 17:44:29 +08:00
this.setState({ loading: true });
setTimeout(() => {
2015-06-15 21:30:17 +08:00
this.setState({ loading: false, visible: false });
2015-06-12 17:37:39 +08:00
}, 3000);
},
handleCancel() {
2015-06-15 21:30:17 +08:00
this.setState({ visible: false });
2015-06-12 17:37:39 +08:00
},
render() {
return (
<div>
<Button type="primary" onClick={this.showModal}>
显示对话框
</Button>
<Modal ref="modal"
visible={this.state.visible}
title="对话框标题" onOk={this.handleOk} onCancel={this.handleCancel}
footer={[
<Button key="back" type="ghost" size="large" onClick={this.handleCancel}>返 回</Button>,
<Button key="submit" type="primary" size="large" loading={this.state.loading} onClick={this.handleOk}>
提 交
</Button>
]}>
<p>对话框的内容</p>
<p>对话框的内容</p>
<p>对话框的内容</p>
<p>对话框的内容</p>
<p>对话框的内容</p>
</Modal>
</div>
);
2015-06-12 17:37:39 +08:00
}
});
ReactDOM.render(<Test />, mountNode);
2015-06-12 17:37:39 +08:00
````