我正在将我们的一个应用程序从 rc4 更新到 angular2.0.0,但在运行时出现模板解析错误。这是我的视图模板:
<div *ngFor="let widget of widgets" class="col-xs-3 quick-link">
<a [routerLink]="['/Tile', widget.WidgetRoute.Feature, widget.WidgetRoute.SubFeature]">
<div class="tile-icon">
<span [className]="widget.IconCssClass"></span>
<span *ngIf="widget.BadgeNumber > 0" class="badge">{{widget.BadgeNumber}}</span>
</div>
<h4>{{widget.Text}}</h4>
</a>
</div>
错误出在routerlink上。这是错误:
Can't bind to 'routerLink' since it isn't a known property of 'a'. ("
<div *ngFor="let widget of widgets" class="col-xs-3 quick-link">
<a [ERROR ->][routerLink]="['/Tile', widget.WidgetRoute.Feature, widget.WidgetRoute.SubFeature]">
<di"): LdrComponent@4:19
Can't bind to 'ngIf' since it isn't a known property of 'span'. ("tile-icon">
<span [className]="widget.IconCssClass"></span>
<span [ERROR ->]*ngIf="widget.BadgeNumber > 0" class="badge">{{widget.BadgeNumber}}</span>
</div>
"): LdrComponent@7:22
routerLink 对我来说似乎没有畸形...我做错了什么?
问题是你忘记添加RouterModule
给你的NgModule
成分。在 RC 中,这被添加到@Component({directives: [ROUTER_DIRECTIVES]})
,但是,现在已移至@NgModule({ imports: [RouterModule]})
.
当您定义路线时,您将导入的组件之一将是RouterModule
你将用来调用forRoot
or forChild
。当您导入路线时,该路线将自动导入。
因此,您可以通过这种方式或直接导入来获得 RouterLinkimports
的财产@NgModule
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)