Just return the promise if it's a bg request

This makes the code a bit neater.
pull/21833/head
David Baker 2017-03-22 11:25:33 +00:00
parent 5ae7d5e4b2
commit 6a56828974
1 changed files with 16 additions and 17 deletions

View File

@ -141,26 +141,25 @@ export default React.createClass({
},
_requestCallback: function(auth, background) {
// only set the busy flag if this is a non-background request,
// otherwise, the user initiated a request, so make the busy
// spinner appear and clear and existing error messages.
if (!background) {
this.setState({
busy: true,
errorText: null,
stageErrorText: null,
});
}
return this.props.makeRequest(auth).finally(() => {
const makeRequestPromise = this.props.makeRequest(auth);
// if it's a background request, just do it: we don't want
// it to affect the state of our UI.
if (background) return makeRequestPromise;
// otherwise, manage the state of the spinner and error messages
this.setState({
busy: true,
errorText: null,
stageErrorText: null,
});
return makeRequestPromise.finally(() => {
if (this._unmounted) {
return;
}
// only unset the busy flag if this is a non-background request
if (!background) {
this.setState({
busy: false,
});
}
this.setState({
busy: false,
});
});
},