Я действительно смущен, должен ли я использоватьУгловой 2 - должен ли он быть routerLink = "theRoute" или [routerLink] = "['route']"?
<a routerLink="/about">About</a>
или
<a [routerLink]="['/about']">About</a>
Я действительно смущен, должен ли я использоватьУгловой 2 - должен ли он быть routerLink = "theRoute" или [routerLink] = "['route']"?
<a routerLink="/about">About</a>
или
<a [routerLink]="['/about']">About</a>
Оба правильные.
<a routerLink="/about">About</a>
и
<a [routerLink]="'/about'">About</a>
пройти путь в виде строки
в то время как
<a [routerLink]="['/about']">About</a>
проходит множество команд маршрутизатора.
Оба поддерживаются.
@Input() set routerLink(data: any[]|string) {
Angular2 DOCS показано применение:
<a [routerLink]="['/about']">About</a>
Это также позволяет передачи объектов во время маршрутизации
Проверка: - https://angular.io/docs/ts/latest/guide/router.html#!#link-parameters-array
Вы хотите, чтобы ваш URL, чтобы передать в качестве объекта к маршрутизатору, Проходят как
<a [routerLink]="['/myPage']" title="My Page">MyPage</a>,
придав ему нравится эта
<a routerLink="/about">About</a
передаст его как строку, так что будет выдавать ошибку
Нет ошибки записи маршрутизатора, как в вашем втором примере (и он также работает) – squaleLis