为什么这条地铁不能用?我查过了,所以问A similar issue。我实现了给出的解决方案,将更具体的路线移到第一位,但这并没有解决问题。
App.component.ts
import {Whatsup} from "./whatsup.component";
...
template:`
<li id="whatsup" (click)="loadField('whatsup')" ><a [routerLink]="['/whatsup/...']"> Whatsup?</a></li>
<router-outlet></router-outlet>
`
...
@Routes([
{path: '/whatsup/...', component: Whatsup}
])Whatsup.component.ts
import {Calendar} from "./Calendar.component";
...
template:`
<li class="list-group-item"><a [routerLink]="['/today']">{{today | date:'EEEEE'}}</a></li>
<router-outlet></router-outlet>
`
...
@Routes([
{path:"/today", component: Calendar}
])Whatsup成功加载,但当我单击Whatsup中的链接时,会得到以下错误:
未处理的拒绝承诺:无法与任何路线相匹配。当前部分:“今天”。可用路线:‘/whatsup/.’、‘/我们的建议’、‘/休假-审查’、‘/在城里的交易’。;区域:角;任务: Promise.then;值: Object { message:“无法匹配任何路由。当前se…”,堆栈:"BaseException@http://localhost:3000…“}
发布于 2016-06-05 10:23:03
在RC.x路由器中,/...不再是必需的,也是不被识别的。只要把它移除:
{path: '/whatsup', component: Whatsup}RC.x路由器有几个问题,目前还不清楚角团队将如何进行。如果您要从router-deprecated开始迁移,最好还是留在不推荐的路由器上,直到清楚路由器的故事将如何发展为止。
关于@angular/router的一些已知问题
constructor(router:Router) {})注入您的AppComponent,或者AppComponent的模板包含一个routerLink,否则路由器根本不会被调用。@Routes()中的路由进行排序,以便更具体的路由优先,而不特定的路由排在最后,否则将找不到第一个之后的路由。https://stackoverflow.com/questions/37640774
复制相似问题