我尝试使用 @ Component.host。' [routerLink]' 声明将routerLink
属性绑定到a
元素,但它崩溃了:< / p>
EXCEPTION:错误:未捕获(在承诺中):模板解析错误: 无法绑定到“routerLink”&#39;因为它不是一个已知的原生财产(&#34; [错误 - &gt;]&#34;):HostMatch @ 0:0
适用于template: '<a [routerLink]="['/Matches', 'MatchesDetail', { match: id }]">{{id}}</a>'
组件代码:
import { RouterLink } from 'angular2/router'
@Component({
directives: [RouterLink],
selector: 'a[match]',
template: `{{id}}`,
host: {
'[routerLink]': "['/Matches', 'MatchesDetail', { match: id }]"
}
})
关键是要像这样得到HTML:
<a href="/matches/1234">1234</a>
而不是:
<match><a href="/matches/1234">1234</a></match>
我错了什么?感谢。
答案 0 :(得分:0)
使用routerLink
这种方式无效。不支持以这种方式使用routerLink
。它是一个添加到元素标记的指令,而不是一些特殊的绑定语法。
host: {
'[routerLink]': "['/Matches', 'MatchesDetail', { match: id }]"
}