为什么routerLink会在超链接中生成"已损坏"的网址

Pas*_*cal 0 angular2-routing angular

我有这个带有routerLink指令的按钮,当我点击它时它工作正常:

 <button type="button" class="btn btn-secondary" [routerLink]="['/companies', id, 'departments', 'edit', t.id]">Edit department</button>
Run Code Online (Sandbox Code Playgroud)

那我有这个超链接:

<a class="nav-link" routerLink="['/companies', id, 'departments']" routerLinkActive="active">Show departments</a>
Run Code Online (Sandbox Code Playgroud)

当我将鼠标悬停在其上时,创建的网址并不是我所期望的.

我有的网址: http://localhost:4200/#/%5B'/companies'%2C%20id%2C%20'departments'%5D

1.)为什么routerLink创建的链接/ url的输出不同?这两种方案都必须创建一个有效/可用的URL才能导航到.

2.)我该如何解决这个问题?

Pie*_*Duc 5

您必须在两种情况下使用括号,否则它只解析您放入的字符串:

[routerLink]="['/companies', id, 'departments']"
Run Code Online (Sandbox Code Playgroud)