Skip to content

'next' query string parameter redirects to sign-in page when using @ui-router/angular-hybrid #19

@iaculch

Description

@iaculch

AngularJS projects migrating to UI-Router V1 must use the stateEvents.js polyfill in order for angular-visor to continue working, see: #18

For UI-Router projects upgrading from AngularJS to Angular, this involves switching from https://www.npmjs.com/package/@uirouter/angularjs to https://www.npmjs.com/package/@uirouter/angular-hybrid for ngUpgrade support.

However, while the 'next' query string parameter works correctly using ui-router/angularjs + stateEvents.js polyfill, ui-router/angular-hybrid + stateEvents.js polyfill causes the 'next' query string parameter to behave incorrectly.

ui-router/angularjs trace:

Transition #0-0: <- Rejected "Transition#0( ''{} -> 'dashboard.phase'{} )", reason: Transition Rejection($id: 0 type: 3, message: The transition has been aborted, detail: Hook aborted transition)

Transition #1-0: Started -> "Transition#1( ''{} -> 'user.signin'{"next":"/dashboard/phase"} )"

Transition #1-0: <- Success "Transition#1( ''{} -> 'user.signin'{"next":"/dashboard/phase"} )", final state: user.signin

ui-router/angular-hybrid trace:

Transition #0-0: <- Rejected "Transition#0( ''{} -> 'dashboard.phase'{} )", reason: Transition Rejection($id: 0 type: 3, message: The transition has been aborted, detail: Hook aborted transition)

Transition #1-0: <- Rejected "Transition#1( ''{} -> 'dashboard.phase'{} )", reason: Transition Rejection($id: 1 type: 3, message: The transition has been aborted, detail: Hook aborted transition)

Transition #2-0: Started -> "Transition#2( ''{} -> 'user.signin'{"next":"/dashboard/phase"} )"

Transition #2-0: <- Success "Transition#2( ''{} -> 'user.signin'{"next":"/dashboard/phase"} )", final state: user.signin

Transition #3-0: Started -> "Transition#3( 'user.signin'{"next":"/dashboard/phase"} -> 'user.signin'{"next":"/user/signin?next=%2Fdashboard%2Fphase"} )"

Transition #3-0: <- Success "Transition#3( 'user.signin'{"next":"/dashboard/phase"} -> 'user.signin'{"next":"/user/signin?next=%2Fdashboard%2Fphase"} )", final state: user.signin

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions