interface
Options that modify the Router
navigation strategy. Supply an object containing any of these properties to a Router
navigation function to control how the target URL should be constructed or interpreted.
interface NavigationExtras {
relativeTo?: ActivatedRoute | null
queryParams?: Params | null
fragment?: string
preserveQueryParams?: boolean
queryParamsHandling?: QueryParamsHandling | null
preserveFragment?: boolean
skipLocationChange?: boolean
replaceUrl?: boolean
state?: {...}
}
See also
- Router.navigate() method
- Router.navigateByUrl() method
- Router.createUrlTree() method
- Routing and Navigation guide
Properties
Property | Description |
---|---|
null |
Specifies a root URI to use for relative navigation. For example, consider the following route configuration where the parent route has two children. [{ path: 'parent', component: ParentComponent, children: [{ path: 'list', component: ListComponent },{ path: 'child', component: ChildComponent }] }] The following
|
null |
Sets query parameters to the URL. // Navigate to /results?page=1 this.router.navigate(['/results'], { queryParams: { page: 1 } }); |
fragment?: string
|
Sets the hash fragment for the URL. // Navigate to /results#top this.router.navigate(['/results'], { fragment: 'top' }); |
preserveQueryParams?: boolean
|
DEPRECATED: Use queryParamsHandling: "preserve" instead to preserve query parameters for the next navigation.
|
null |
How to handle query parameters in the router link for the next navigation. One of:
The "preserve" option discards any new query params: // from /view1?page=1 to/view2?page=1 this.router.navigate(['/view2'], { queryParams: { page: 2 }, queryParamsHandling: "preserve" }); The "merge" option appends new query params to the params from the current URL: // from /view1?page=1 to/view2?page=1&otherKey=2 this.router.navigate(['/view2'], { queryParams: { otherKey: 2 }, queryParamsHandling: "merge" }); In case of a key collision between current parameters and those in the |
preserveFragment?: boolean
|
When true, preserves the URL fragment for the next navigation // Preserve fragment from /results#top to /view#top this.router.navigate(['/view'], { preserveFragment: true }); |
skipLocationChange?: boolean
|
When true, navigates without pushing a new state into history. // Navigate silently to /view this.router.navigate(['/view'], { skipLocationChange: true }); |
replaceUrl?: boolean
|
When true, navigates while replacing the current state in history. // Navigate to /view this.router.navigate(['/view'], { replaceUrl: true }); |
state?: { [k: string]: any; }
|
Developer-defined state that can be passed to any navigation. Access this value through the After a navigation completes, the router writes an object containing this value together with a Note that |
© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v10.angular.io/api/router/NavigationExtras