Delete LazyRenderer
Summary: This isn't used internally at Facebook and we have no public documentation for this component. If people are interested in using it they can easily reproduce this function outside of core. Reviewed By: yungsters Differential Revision: D7985955 fbshipit-source-id: 859878a858cbcb42fec7f9bd04e5d7574801e445
This commit is contained in:
parent
06052a2330
commit
d796129895
|
@ -1,44 +0,0 @@
|
||||||
/**
|
|
||||||
* Copyright (c) 2015-present, Facebook, Inc.
|
|
||||||
*
|
|
||||||
* This source code is licensed under the MIT license found in the
|
|
||||||
* LICENSE file in the root directory of this source tree.
|
|
||||||
*
|
|
||||||
* @format
|
|
||||||
*/
|
|
||||||
|
|
||||||
'use strict';
|
|
||||||
|
|
||||||
const React = require('React');
|
|
||||||
const createReactClass = require('create-react-class');
|
|
||||||
const PropTypes = require('prop-types');
|
|
||||||
const TimerMixin = require('react-timer-mixin');
|
|
||||||
|
|
||||||
const LazyRenderer = createReactClass({
|
|
||||||
displayName: 'LazyRenderer',
|
|
||||||
mixin: [TimerMixin],
|
|
||||||
|
|
||||||
propTypes: {
|
|
||||||
render: PropTypes.func.isRequired,
|
|
||||||
},
|
|
||||||
|
|
||||||
UNSAFE_componentWillMount: function(): void {
|
|
||||||
this.setState({
|
|
||||||
_lazyRender: true,
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
componentDidMount: function(): void {
|
|
||||||
requestAnimationFrame(() => {
|
|
||||||
this.setState({
|
|
||||||
_lazyRender: false,
|
|
||||||
});
|
|
||||||
});
|
|
||||||
},
|
|
||||||
|
|
||||||
render: function(): ?React.Element {
|
|
||||||
return this.state._lazyRender ? null : this.props.render();
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
module.exports = LazyRenderer;
|
|
Loading…
Reference in New Issue