尝试切换到新的路由器,如版本“@ angular / router”:“3.0.0-beta.2”与“@ angular / *”:“2.0.0-rc.4”结合使用, ComponentRouter上的官方文档。
但是,当我尝试使用默认的HomeComponent加载我的应用程序时,我遇到了一个问题:
Cannot find primary outlet to load 'HomeComponent'
这似乎与使用templateUrl和外部html文件而不是使用内联模板样式有关。
HomeComponent最初未显示在Window中,并且错误将打印到控制台。但是,当我使用Home Component的链接时,它会显示为二手。
我从
改变templateUrl: 'home.html'
到
template: '<router-outlet></router-outlet>'
错误消失,HomeComponent显示,路由按预期工作。
这是一个已知问题吗?它对使用templateUrl的人有用吗?为了让它发挥作用,我有什么必须尊重的吗?
答案 0 :(得分:27)
问题是,由于应用程序加载屏幕,由于竞争条件,[hidden]
有时尚未存在。如果您需要隐藏包含插座的html部分,请使用*ngIf
代替mm = date.substring(0, 1);
,以确保插座始终位于DOM中,并且不会有条件地移除。