Skip to content

Commit

Permalink
Merge pull request #22 from dlmr/fix/solve-bugs
Browse files Browse the repository at this point in the history
General bug fixes
  • Loading branch information
dlmr authored Dec 7, 2017
2 parents 33d3d85 + 0be9739 commit a2555a7
Showing 1 changed file with 27 additions and 24 deletions.
51 changes: 27 additions & 24 deletions src/RedialContext.js
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,32 @@ export default class RedialContext extends Component {
aborted,
abort,
loading: true,
prevRenderProps: this.state.aborted() ? this.state.prevRenderProps : this.props.renderProps,
prevRenderProps: this.state.loading || this.state.aborted()
? this.state.prevRenderProps
: this.props.renderProps,
});

this.runBeforeTransition(
this.props.beforeTransition,
components,
renderProps,
force,
bail
)
.catch((error) => {
let afterTransition = false;
if (error && error.afterTransition !== undefined) {
afterTransition = error.afterTransition;
error = error.error; // eslint-disable-line
}

this.props.onError(error, {
reason: bail() || 'other',
// If not defined before it's a beforeTransition error
beforeTransition: !afterTransition,
router: this.props.renderProps.router,
abort: () => this.abort(true, abort),
});
});

if (this.props.parallel) {
Expand All @@ -198,6 +223,7 @@ export default class RedialContext extends Component {
)
.then(() => {
if (this.completed.afterTransition) {
this.completed.afterTransition = false;
this.props.onCompleted('afterTransition');
}
})
Expand All @@ -218,29 +244,6 @@ export default class RedialContext extends Component {
}
});
}

this.runBeforeTransition(
this.props.beforeTransition,
components,
renderProps,
force,
bail
)
.catch((error) => {
let afterTransition = false;
if (error && error.afterTransition !== undefined) {
afterTransition = error.afterTransition;
error = error.error; // eslint-disable-line
}

this.props.onError(error, {
reason: bail() || 'other',
// If not defined before it's a beforeTransition error
beforeTransition: !afterTransition,
router: this.props.renderProps.router,
abort: () => this.abort(true, abort),
});
});
}

runAfterTransition(hooks, components, renderProps, force = false, bail) {
Expand Down

0 comments on commit a2555a7

Please sign in to comment.