-
-
Notifications
You must be signed in to change notification settings - Fork 5k
Labels
feature requestgroup[current route information]Issues regarding current route information that is currently missingIssues regarding current route information that is currently missingneeds RFCThis feature request needs to go through the RFC process to gather more informationThis feature request needs to go through the RFC process to gather more information
Description
What problem does this feature solve?
I am trying to create a single page mobile app with a push/pop/modal navigation. This navigation behavior is similar to the iOS SDK's navigation controller behavior.
To get this to work in my code I have added a new field(navigationType: push | pop | modal) in the params object. Then in router.afterEach I check for this new field.
It would be nice to have this be part of the vue router api. Considering the push/replace is already separate API.
What does the proposed API look like?
usage might be:
router.afterEach((to, from) => {
if(to.navigationType == 'push'){
} else if(to.navigationType == 'replace'){
}
}
BoltDoggy, sabuydee, jnields, liaozhongwu, Dadibom and 49 more
Metadata
Metadata
Assignees
Labels
feature requestgroup[current route information]Issues regarding current route information that is currently missingIssues regarding current route information that is currently missingneeds RFCThis feature request needs to go through the RFC process to gather more informationThis feature request needs to go through the RFC process to gather more information
Activity
zack24q commentedon Aug 1, 2017
Features are also needed in beforeEach.
Dadibom commentedon Feb 22, 2018
As many +1's as I can give.
I need this in scrollBehavior
guidobouman commentedon Dec 10, 2020
When you have a navigation guard that needs to stick on a part on the URL, no matter if it's a push or replace, this becomes very hard to do transparently.
If we follow @posva's suggestion, suddenly all locations that use a replace also need to pass on another navigation prop, to indicate that this was a replace to the navigation guards. This seems to be the only way for our navigation guard
next(to)
call to be a push or replace based on the initial navigation that triggered the guard.popstate
vspush
/replace
in navigation guards #3453feat: ability to check push vs replace in navigation guard
feat: ability to check push vs replace in navigation guard
feat: ability to check push vs replace in navigation guard
passive
option forrouter.push
/router.replace
vuejs/router#2232