2015-11-06 12:26:24 +00:00
@cheatsheetSection
Routing and navigation
2015-11-13 07:14:12 +00:00
@cheatsheetIndex 10
2015-11-06 12:26:24 +00:00
@description
2015-12-12 21:17:26 -06:00
{@target ts}`import {RouteConfig, ROUTER_DIRECTIVES, ROUTER_PROVIDERS, ...} from 'angular2/router';` {@endtarget }
{@target js}Available from the `ng.router` namespace{@endtarget }
2016-04-01 13:03:10 -07:00
{@target dart}`import 'package:angular2/router.dart';` {@endtarget }
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts):
2015-11-06 12:26:24 +00:00
`@RouteConfig([
2016-01-24 09:04:46 +01:00
{ path: '/:myParam', component: MyComponent, name: 'MyCmp' },
{ path: '/staticPath', component: ..., name: ...},
{ path: '/*wildCardParam', component: ..., name: ...}
2015-11-06 12:26:24 +00:00
])
class MyComponent() {}` |`@RouteConfig`
2015-12-12 21:17:26 -06:00
syntax(js):
`var MyComponent = ng.router.RouteConfig([
2016-01-24 09:04:46 +01:00
{ path: '/:myParam', component: MyComponent, name: 'MyCmp' },
{ path: '/staticPath', component: ..., name: ...},
{ path: '/*wildCardParam', component: ..., name: ...}
2015-12-12 21:17:26 -06:00
]).Class({
constructor: function() {}
});` |`ng.router.RouteConfig`
2015-12-09 10:22:40 -08:00
syntax(dart):
`@RouteConfig(const [
const Route(path: '/:myParam', component: MyComponent, name: 'MyCmp' ),
2015-12-10 09:52:19 -08:00
])` |`@RouteConfig`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
Configures routes for the decorated component. Supports static, parameterized, and wildcard routes.
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-09 12:33:42 +00:00
syntax:
2015-11-06 12:26:24 +00:00
`<router-outlet></router-outlet>` |`router-outlet`
2015-12-09 12:33:42 +00:00
description:
2015-11-06 12:26:24 +00:00
Marks the location to load the component of the active route.
@cheatsheetItem
2015-12-10 09:52:19 -08:00
syntax:
2015-11-23 16:02:19 -08:00
`<a [routerLink]="[ '/MyCmp', {myParam: 'value' } ]">` |`[routerLink]`
2015-12-09 12:33:42 +00:00
description:
2015-11-06 12:26:24 +00:00
Creates a link to a different view based on a route instruction consisting of a route name and optional parameters. The route name matches the as property of a configured route. Add the '/' prefix to navigate to a root route; add the './' prefix for a child route.
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts):
2015-11-06 12:26:24 +00:00
`@CanActivate(() => { ... })class MyComponent() {}` |`@CanActivate`
2015-12-12 21:17:26 -06:00
syntax(js):
`var MyComponent = ng.router.CanActivate(function() { ... }).Component({...}).Class({constructor: ...});` |`ng.router.CanActivate(function() { ... })`
2015-12-09 10:22:40 -08:00
syntax(dart):
`@CanActivate(() => ...)class MyComponent() {}` |`@CanActivate`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
A component decorator defining a function that the router should call first to determine if it should activate this component. Should return a boolean or a {@target js ts}promise{@endtarget }{@target dart}future{@endtarget }.
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts dart):
2015-11-16 17:04:36 -08:00
`routerOnActivate(nextInstruction, prevInstruction) { ... }` |`routerOnActivate`
2015-12-12 21:17:26 -06:00
syntax(js):
`routerOnActivate: function(nextInstruction, prevInstruction) { ... }` |`routerOnActivate`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
After navigating to a component, the router calls the component's routerOnActivate method (if defined).
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts dart):
2015-11-16 17:04:36 -08:00
`routerCanReuse(nextInstruction, prevInstruction) { ... }` |`routerCanReuse`
2015-12-12 21:17:26 -06:00
syntax(js):
`routerCanReuse: function(nextInstruction, prevInstruction) { ... }` |`routerCanReuse`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
The router calls a component's routerCanReuse method (if defined) to determine whether to reuse the instance or destroy it and create a new instance. Should return a boolean or a {@target js ts}promise{@endtarget }{@target dart}future{@endtarget }.
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts dart):
2015-11-16 17:04:36 -08:00
`routerOnReuse(nextInstruction, prevInstruction) { ... }` |`routerOnReuse`
2015-12-12 21:17:26 -06:00
syntax(js):
`routerOnReuse: function(nextInstruction, prevInstruction) { ... }` |`routerOnReuse`
2015-12-09 12:33:42 +00:00
description:
2015-11-16 17:04:36 -08:00
The router calls the component's routerOnReuse method (if defined) when it re-uses a component instance.
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts dart):
2015-11-16 17:04:36 -08:00
`routerCanDeactivate(nextInstruction, prevInstruction) { ... }` |`routerCanDeactivate`
2015-12-12 21:17:26 -06:00
syntax(js):
`routerCanDeactivate: function(nextInstruction, prevInstruction) { ... }` |`routerCanDeactivate`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
The router calls the routerCanDeactivate methods (if defined) of every component that would be removed after a navigation. The navigation proceeds if and only if all such methods return true or a {@target js ts}promise that is resolved{@endtarget }{@target dart}future that completes successfully{@endtarget }.
2015-11-06 12:26:24 +00:00
@cheatsheetItem
2015-12-12 21:17:26 -06:00
syntax(ts dart):
2015-11-16 17:04:36 -08:00
`routerOnDeactivate(nextInstruction, prevInstruction) { ... }` |`routerOnDeactivate`
2015-12-12 21:17:26 -06:00
syntax(js):
`routerOnDeactivate: function(nextInstruction, prevInstruction) { ... }` |`routerOnDeactivate`
2015-12-09 12:33:42 +00:00
description:
2015-12-10 09:52:19 -08:00
Called before the directive is removed as the result of a route change. May return a {@target js ts}promise{@endtarget }{@target dart}future{@endtarget } that pauses removing the directive until the {@target js ts}promise resolves{@endtarget }{@target dart}future completes{@endtarget }.