mirror of
https://github.com/wahyd4/ant-design.git
synced 2026-08-26 21:26:26 +10:00
225 lines
7.6 KiB
HTML
225 lines
7.6 KiB
HTML
<div class="code-box" id="anim-demo-form">
|
|
<div class="code-box-demo">
|
|
<div id="components-queue-anim-demo-form"></div>
|
|
<script>(function(){"use strict";
|
|
|
|
var _antd = require('antd');
|
|
|
|
var Option = _antd.Select.Option;
|
|
var RadioGroup = _antd.Radio.Group;
|
|
|
|
var Test = React.createClass({
|
|
displayName: "Test",
|
|
|
|
getInitialState: function getInitialState() {
|
|
return {
|
|
show: true
|
|
};
|
|
},
|
|
onClick: function onClick() {
|
|
this.setState({
|
|
show: !this.state.show
|
|
});
|
|
},
|
|
render: function render() {
|
|
return React.createElement(
|
|
"div",
|
|
null,
|
|
React.createElement(
|
|
"p",
|
|
{ className: "buttons" },
|
|
React.createElement(
|
|
_antd.Button,
|
|
{ type: "primary", onClick: this.onClick },
|
|
"切换"
|
|
)
|
|
),
|
|
React.createElement(
|
|
_antd.QueueAnim,
|
|
{ component: "form", className: "ant-form-horizontal", type: "bottom", leaveReverse: true },
|
|
this.state.show ? [React.createElement(
|
|
"div",
|
|
{ className: "ant-form-item ant-form-item-compact", key: "name" },
|
|
React.createElement(
|
|
"label",
|
|
{ htmlFor: "userName", className: "col-6", required: true },
|
|
"用户名:"
|
|
),
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-6" },
|
|
React.createElement(
|
|
"p",
|
|
{ className: "ant-form-text" },
|
|
"大眼萌 minion"
|
|
)
|
|
)
|
|
), React.createElement(
|
|
"div",
|
|
{ className: "ant-form-item", key: "password" },
|
|
React.createElement(
|
|
"label",
|
|
{ htmlFor: "password", className: "col-6", required: true },
|
|
"密码:"
|
|
),
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-14" },
|
|
React.createElement("input", { className: "ant-input", type: "password", id: "password", placeholder: "请输入密码" })
|
|
)
|
|
), React.createElement(
|
|
"div",
|
|
{ className: "ant-form-item ant-form-item-compact", key: "sex" },
|
|
React.createElement(
|
|
"label",
|
|
{ className: "col-6", required: true },
|
|
"您的性别:"
|
|
),
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-14" },
|
|
React.createElement(
|
|
RadioGroup,
|
|
{ value: "male" },
|
|
React.createElement(
|
|
_antd.Radio,
|
|
{ value: "male" },
|
|
"男的"
|
|
),
|
|
React.createElement(
|
|
_antd.Radio,
|
|
{ value: "female" },
|
|
"女的"
|
|
)
|
|
)
|
|
)
|
|
), React.createElement(
|
|
"div",
|
|
{ className: "ant-form-item", key: "remark" },
|
|
React.createElement(
|
|
"label",
|
|
{ htmlFor: "remark", className: "col-6", required: true },
|
|
"备注:"
|
|
),
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-14" },
|
|
React.createElement("textarea", { className: "ant-input", id: "remark", placeholder: "随便写" }),
|
|
React.createElement(
|
|
"p",
|
|
{ className: "ant-form-explain" },
|
|
"随便写点什么"
|
|
)
|
|
)
|
|
), React.createElement(
|
|
"div",
|
|
{ className: "ant-form-item ant-form-item-compact", key: "checkbox" },
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-14 col-offset-6" },
|
|
React.createElement(
|
|
"label",
|
|
null,
|
|
React.createElement(_antd.Checkbox, null),
|
|
"同意"
|
|
)
|
|
)
|
|
), React.createElement(
|
|
"div",
|
|
{ className: "row", key: "btn" },
|
|
React.createElement(
|
|
"div",
|
|
{ className: "col-16 col-offset-6" },
|
|
React.createElement(
|
|
_antd.Button,
|
|
{ type: "primary" },
|
|
"确定"
|
|
)
|
|
)
|
|
)] : null
|
|
)
|
|
);
|
|
}
|
|
});
|
|
|
|
ReactDOM.render(React.createElement(Test, null), document.getElementById('components-queue-anim-demo-form'));})()</script><div class="highlight"><pre><code class="javascript">import { QueueAnim, Button, Select, Checkbox, Radio } from 'antd';
|
|
const Option = Select.Option;
|
|
const RadioGroup = Radio.Group;
|
|
|
|
const Test = React.createClass({
|
|
getInitialState() {
|
|
return {
|
|
show: true
|
|
};
|
|
},
|
|
onClick() {
|
|
this.setState({
|
|
show: !this.state.show
|
|
});
|
|
},
|
|
render() {
|
|
return (
|
|
<div>
|
|
<p className="buttons">
|
|
<Button type="primary" onClick={this.onClick}>切换</Button>
|
|
</p>
|
|
<QueueAnim component="form" className="ant-form-horizontal" type="bottom" leaveReverse={true}>
|
|
{this.state.show ? [
|
|
<div className="ant-form-item ant-form-item-compact" key='name'>
|
|
<label htmlFor="userName" className="col-6" required>用户名:</label>
|
|
<div className="col-6">
|
|
<p className="ant-form-text">大眼萌 minion</p>
|
|
</div>
|
|
</div>,
|
|
<div className="ant-form-item" key='password'>
|
|
<label htmlFor="password" className="col-6" required>密码:</label>
|
|
<div className="col-14">
|
|
<input className="ant-input" type="password" id="password" placeholder="请输入密码"/>
|
|
</div>
|
|
</div>,
|
|
<div className="ant-form-item ant-form-item-compact" key='sex'>
|
|
<label className="col-6" required>您的性别:</label>
|
|
<div className="col-14">
|
|
<RadioGroup value="male">
|
|
<Radio value="male">男的</Radio>
|
|
<Radio value="female">女的</Radio>
|
|
</RadioGroup>
|
|
</div>
|
|
</div>,
|
|
<div className="ant-form-item" key='remark'>
|
|
<label htmlFor="remark" className="col-6" required>备注:</label>
|
|
<div className="col-14">
|
|
<textarea className="ant-input" id="remark" placeholder="随便写"></textarea>
|
|
<p className="ant-form-explain">随便写点什么</p>
|
|
</div>
|
|
</div>,
|
|
<div className="ant-form-item ant-form-item-compact" key='checkbox'>
|
|
<div className="col-14 col-offset-6">
|
|
<label>
|
|
<Checkbox />
|
|
同意
|
|
</label>
|
|
</div>
|
|
</div>,
|
|
<div className="row" key='btn'>
|
|
<div className="col-16 col-offset-6">
|
|
<Button type="primary">确定</Button>
|
|
</div>
|
|
</div>
|
|
] : null}
|
|
</QueueAnim>
|
|
</div>
|
|
);
|
|
}
|
|
});
|
|
|
|
ReactDOM.render(<Test />, document.getElementById('components-queue-anim-demo-form'));</code></pre></div>
|
|
</div>
|
|
<div class="code-box-meta markdown">
|
|
<div class="code-box-title">
|
|
<a href="#anim-demo-form">表单动画进出场</a>
|
|
</div>
|
|
<p>表单组合的进场与出场动画。</p>
|
|
<span class="collapse anticon anticon-circle-o-right" unselectable="none" style="-webkit-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;"></span>
|
|
</div>
|
|
</div> |