diff --git a/app/javascript/mastodon/features/ui/components/bundle.js b/app/javascript/mastodon/features/ui/components/bundle.js index 72798f69..fc88e0c7 100644 --- a/app/javascript/mastodon/features/ui/components/bundle.js +++ b/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;