Skip to content

Commit 6b231fb

Browse files
taiontimdorr
authored andcommitted
Fix redirects (#3808)
Only need to create the location in match. Fixes #3807
1 parent 4f3ea90 commit 6b231fb

File tree

2 files changed

+3
-7
lines changed

2 files changed

+3
-7
lines changed

modules/createTransitionManager.js

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import warning from './routerWarning'
2-
import { REPLACE } from 'history/lib/Actions'
32
import computeChangedRoutes from './computeChangedRoutes'
43
import { runEnterHooks, runChangeHooks, runLeaveHooks } from './TransitionUtils'
54
import _isActive from './isActive'
@@ -43,10 +42,6 @@ export default function createTransitionManager(history, routes) {
4342
)
4443
}
4544

46-
function createLocationFromRedirectInfo(location) {
47-
return history.createLocation(location, REPLACE)
48-
}
49-
5045
let partialNextState
5146

5247
function match(location, callback) {
@@ -104,7 +99,7 @@ export default function createTransitionManager(history, routes) {
10499

105100
function handleErrorOrRedirect(error, redirectInfo) {
106101
if (error) callback(error)
107-
else callback(null, createLocationFromRedirectInfo(redirectInfo))
102+
else callback(null, redirectInfo)
108103
}
109104
}
110105

modules/match.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import { REPLACE } from 'history/lib/Actions'
12
import invariant from 'invariant'
23

34
import createMemoryHistory from './createMemoryHistory'
@@ -45,7 +46,7 @@ function match({ history, routes, location, ...options }, callback) {
4546
transitionManager.match(location, function (error, redirectLocation, nextState) {
4647
callback(
4748
error,
48-
redirectLocation,
49+
redirectLocation && router.createLocation(redirectLocation, REPLACE),
4950
nextState && {
5051
...nextState,
5152
history,

0 commit comments

Comments
 (0)