Javascript angular2路由器出口在登录后无法工作

Javascript angular2路由器出口在登录后无法工作,javascript,angular,angular2-template,Javascript,Angular,Angular2 Template,当im登录并导航到其他页面或登录时,我会出现以下错误: EXCEPTION: Uncaught (in promise): Error: Cannot find primary outlet to load 'customComponent' Error: Cannot find primary outlet to load 'customComponent' 但是,当我没有登录时,导航就起作用了 我还注意到,如果我移除其中一个路由器出口,导航将正常工作。假设我在loggedin中移除路由器出

当im登录并导航到其他页面或登录时,我会出现以下错误:

EXCEPTION: Uncaught (in promise): Error: Cannot find primary outlet to load 'customComponent'
Error: Cannot find primary outlet to load 'customComponent'
但是,当我没有登录时,导航就起作用了

我还注意到,如果我移除其中一个路由器出口,导航将正常工作。假设我在loggedin中移除路由器出口,user.username中的导航将正常工作

为什么? 我怎样才能使它正常工作?如果未登录,请在那里显示路由器出口;如果im在线,请在其他地方显示

代码:

但当我导航时,我得到:

EXCEPTION: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'murder'
为什么

完整代码路由:

 RouterModule.forRoot([

              {
                  path: 'login',
                  component: LoginhandlerComponent,
                  outlet: 'aux'

              },

          {
              path: 'murder',
              component: MurderComponent,
              outlet: 'regular'

          },


          ]

      )

您需要将插座添加到路由器链接。试着这样做:

<a [routerLink]="['/', {outlets: {'regular': 'murder'}}]" routerLinkActive="active">Murder</a>
谋杀

如果要使用多个路由器插座,则需要为标签命名。看这个,我做了那个,不是吗?很抱歉,我没有看到你更新了代码。我又看了一遍,但我没有抓住错误造成的要点。但我想知道你的routerLink在哪里,它指向“谋杀”。更新了@BlackEagle,谋杀在代码中从其他更改为谋杀。如果我这样做。我还需要执行:{path:'',组件:LoginhandlerComponent,outlet:'outside',},当它不是路径时进行处理。但是当我在里面的时候,我不能用常规的。是否有办法在分配前检查用户是否登录?您还需要将路由器出口(没有名称的)移到ngIf语句之外。
   path: 'murder',
              component: MurderComponent,
              outlet: 'regular'
EXCEPTION: Uncaught (in promise): Error: Cannot match any routes. URL Segment: 'murder'
 RouterModule.forRoot([

              {
                  path: 'login',
                  component: LoginhandlerComponent,
                  outlet: 'aux'

              },

          {
              path: 'murder',
              component: MurderComponent,
              outlet: 'regular'

          },


          ]

      )
<a [routerLink]="['/', {outlets: {'regular': 'murder'}}]" routerLinkActive="active">Murder</a>