我创建了一个组件,其中包含一个带有 routerLink 属性的元素,我想从使用该组件的模板中设置该属性。当我尝试这样做时,我收到错误消息“无法读取未定义的属性'路径'”。
我的组件看起来链接这个:
信息框.component.ts
import { Input, Component } from "@angular/core";
import { ROUTER_DIRECTIVES } from "@angular/router";
@Component({
selector: "info-box",
template: require("./info-box.component.html"),
directives: [
ROUTER_DIRECTIVES
]
})
export class InfoBoxComponent {
@Input() routerLink: string;
@Input() imageUrl: string;
}
info-box.component.html
<a [routerLink]="[routerLink]">
<img src="{{imageUrl}}" width="304" height="236">
</a>
并且使用该组件的模板如下所示:
<info-box [routerLink]="['/test']" [imageUrl]="['./testimage.jpg']"
如果我不添加 routerLink 一切正常。我的路由器配置似乎是正确的,因为当我直接将其添加到我的模板时它也可以正常工作。谁能帮我这个?
格特·马尔科