fix(components/bundle): Exit early in load function (#4349)

master
Sorin Davidoi 7 years ago committed by Eugen Rochko
parent de105d64d5
commit 23e854cb91
  1. 13
      app/javascript/mastodon/features/ui/components/bundle.js

@ -52,14 +52,8 @@ class Bundle extends React.Component {
load = (props) => {
const { fetchComponent, onFetch, onFetchSuccess, onFetchFail, renderDelay } = props || this.props;
this.setState({ mod: undefined });
onFetch();
if (renderDelay !== 0) {
this.timestamp = new Date();
this.timeout = setTimeout(() => this.setState({ forceRender: true }), renderDelay);
}
if (Bundle.cache[fetchComponent.name]) {
const mod = Bundle.cache[fetchComponent.name];
@ -68,6 +62,13 @@ class Bundle extends React.Component {
return Promise.resolve();
}
this.setState({ mod: undefined });
if (renderDelay !== 0) {
this.timestamp = new Date();
this.timeout = setTimeout(() => this.setState({ forceRender: true }), renderDelay);
}
return fetchComponent()
.then((mod) => {
Bundle.cache[fetchComponent.name] = mod;

Loading…
Cancel
Save