UNPKG

dora-ui

Version:

A React.js Mobile UI Library

59 lines (58 loc) 2.1 kB
import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Props as SpinnerProps } from '../spinner'; declare type SpinnerSize = SpinnerProps['size']; interface Props { spinning: boolean; fullScreen: boolean; spinner: React.ReactElement; size: SpinnerSize; tip: string; wrapperClassName: string; transition: boolean; delay: number; } interface State { spinning: boolean; } declare class Spin extends Component<Props, State> { static propTypes: { spinning: PropTypes.Validator<boolean>; fullScreen: PropTypes.Requireable<boolean>; size: PropTypes.Requireable<string>; children: PropTypes.Requireable<PropTypes.ReactNodeLike>; spinner: PropTypes.Requireable<PropTypes.ReactElementLike>; tip: PropTypes.Requireable<string>; wrapperClassName: PropTypes.Requireable<string>; transition: PropTypes.Requireable<boolean>; delay: PropTypes.Requireable<number>; }; static defaultProps: { fullScreen: boolean; size: string; tip: string; wrapperClassName: string; transition: boolean; delay: number; spinner: JSX.Element; }; constructor(props: Props); componentDidMount(): void; /** * antd Spin组件每次didupdate中 取消防抖updateSpinning函数的执行 随后重新创建防抖updateSpinning函数进行执行 * 未直接使用 didmount 中创建的防抖updateSpinning函数 的防抖特性 可参见antd源码3.20.5 * 此处进行优化: 利用防抖函数特性,无需重复取消创建防抖updateSpinning函数 */ componentDidUpdate(): void; /** * 避免组件卸载后 spinning状态变化而setState报错 * 参考antd,相关issue https://github.com/ant-design/ant-design/pull/16081 */ componentWillUnmount(): void; debouncifyUpdateSpinning: (props: Props) => void; updateSpinning: () => void; cancelExistingSpin(): void; getSpinElement(): JSX.Element | null; render(): JSX.Element; } export default Spin;