mirror of
https://gitee.com/ant-design/ant-design.git
synced 2024-12-02 12:09:14 +08:00
parent
3e97b393a2
commit
6467bc7a73
@ -8,8 +8,15 @@ export default class Spin extends React.Component {
|
||||
static defaultProps = {
|
||||
prefixCls: 'ant-spin',
|
||||
spinning: true,
|
||||
debounce: 0,
|
||||
}
|
||||
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
spinning: props.spinning || props.spining,
|
||||
};
|
||||
}
|
||||
static propTypes = {
|
||||
className: React.PropTypes.string,
|
||||
size: React.PropTypes.oneOf(['small', 'default', 'large']),
|
||||
@ -26,10 +33,21 @@ export default class Spin extends React.Component {
|
||||
findDOMNode(this).className += ` ${this.props.prefixCls}-show-text`;
|
||||
}
|
||||
}
|
||||
|
||||
render() {
|
||||
const { className, size, prefixCls, tip, spining = true } = this.props;
|
||||
componentWillReceiveProps(nextProps) {
|
||||
const { spining = true, debounce } = nextProps;
|
||||
const spinning = this.props.spinning && spining; // Backwards support
|
||||
if (this.debounceTimeout) {
|
||||
clearTimeout(this.debounceTimeout);
|
||||
}
|
||||
if (debounce && spinning) {
|
||||
this.debounceTimeout = setTimeout(() => this.setState({ spinning }), debounce);
|
||||
} else {
|
||||
this.setState({ spinning });
|
||||
}
|
||||
}
|
||||
render() {
|
||||
const { className, size, prefixCls, tip } = this.props;
|
||||
const { spinning } = this.state;
|
||||
|
||||
const spinClassName = classNames({
|
||||
[prefixCls]: true,
|
||||
|
@ -20,3 +20,4 @@ english: Spin
|
||||
| size | enum | default | spin组件中点的大小,可选值为 small default large |
|
||||
| spinning | boolean | true | 用于内嵌其他组件的模式,可以关闭 loading 效果 |
|
||||
| tip | string | 无 | 自定义描述文案 |
|
||||
| debounce | number | 0 | 毫秒,用于设定去抖动的 debounce 值。|
|
||||
|
Loading…
Reference in New Issue
Block a user