UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

36 lines (33 loc) 1.49 kB
import {TEMPLATE_TRANSFORMS} from 'angular2/compiler'; import {Provider} from 'angular2/core'; import {RouterLinkTransform} from 'angular2/src/router/directives/router_link_transform'; import {CONST_EXPR} from 'angular2/src/facade/lang'; export {RouterLinkTransform} from 'angular2/src/router/directives/router_link_transform'; /** * Enables the router link DSL. * * Warning. This feature is experimental and can change. * * To enable the transformer pass the router link DSL provider to `bootstrap`. * * ## Example: * ``` * import {bootstrap} from 'angular2/platform/browser'; * import {ROUTER_LINK_DSL_PROVIDER} from 'angular2/router/router_link_dsl'; * * bootstrap(CustomApp, [ROUTER_LINK_DSL_PROVIDER]); * ``` * * The DSL allows you to express router links as follows: * ``` * <a [routerLink]="route:User"> <!-- Same as <a [routerLink]="['User']"> --> * <a [routerLink]="route:/User"> <!-- Same as <a [routerLink]="['User']"> --> * <a [routerLink]="route:./User"> <!-- Same as <a [routerLink]="['./User']"> --> * <a [routerLink]="./User(id: value, name: 'Bob')"> <!-- Same as <a [routerLink]="['./User', {id: * value, name: 'Bob'}]"> --> * <a [routerLink]="/User/Modal"> <!-- Same as <a [routerLink]="['/User', 'Modal']"> --> * <a [routerLink]="User[Modal]"> <!-- Same as <a [routerLink]="['User', ['Modal']]"> --> * ``` */ export const ROUTER_LINK_DSL_PROVIDER = CONST_EXPR(new Provider(TEMPLATE_TRANSFORMS, {useClass: RouterLinkTransform, multi: true}));