UNPKG

@uifabric/utilities

Version:

Fluent UI React utilities for building components.

43 lines 1.39 kB
import { __extends } from "tslib"; import * as React from 'react'; /** * Utility component for delaying the render of a child component after a given delay. This component * requires a single child component; don't pass in many components. Wrap multiple components in a DIV * if necessary. * * @public * {@docCategory DelayedRender} */ var DelayedRender = /** @class */ (function (_super) { __extends(DelayedRender, _super); function DelayedRender(props) { var _this = _super.call(this, props) || this; _this.state = { isRendered: false, }; return _this; } DelayedRender.prototype.componentDidMount = function () { var _this = this; var delay = this.props.delay; this._timeoutId = window.setTimeout(function () { _this.setState({ isRendered: true, }); }, delay); }; DelayedRender.prototype.componentWillUnmount = function () { if (this._timeoutId) { clearTimeout(this._timeoutId); } }; DelayedRender.prototype.render = function () { return this.state.isRendered ? React.Children.only(this.props.children) : null; }; DelayedRender.defaultProps = { delay: 0, }; return DelayedRender; }(React.Component)); export { DelayedRender }; //# sourceMappingURL=DelayedRender.js.map