我正在尝试使用两个路由器插座构建一个应用程序,以便其中一个是左侧菜单。我在左侧菜单中有一个链接,在主插座中加载一个组件,但是如果我点击它,左侧菜单组件就会消失,所以我添加了(left-menu:leftmenu)
。
这是左侧菜单的模板(left-menu.component.html
):
<div class="leftmenu">
<a routerLink="/form(left-menu:left-menu)">Go to the form!</a>
</div>
这是我传递给RouterModule.forRoot(routes)
的路线数组:
const appRoutes: Routes = [
{
path: '',
component: LeftMenuComponent,
outlet: 'left-menu',
pathMatch: 'full'
},
{
path: 'leftmenu',
component: LeftMenuComponent,
outlet: 'left-menu',
},
{
path: 'form',
component: ProjectFormComponent
},
{
path: '**', redirectTo: ''
}];
但我看到的是,链接中呈现的网址不是/form(left-menu:left-menu)
而是/form(left-menu%3Aleft-menu)
,因此链接不起作用。另一方面,如果我在浏览器中写入正确的URL(带冒号),它可以正常工作(即加载ProjectFormComponent
并且LeftMenuComponent
保留在左侧插座中。/ p>
任何人都知道为什么会这样?
提前谢谢。