如何解决此错误错误:无法激活已经激活的插座

时间:2020-09-18 09:38:17

标签: angular routes

我在路由器上遇到此问题,因此我的应用程序由一个主页组成,每次导航到一个孩子并重新加载页面时,我的孩子都很多。

PipelineB

我根据发现的答案here

尝试了此解决方案
    ERROR Error: Uncaught (in promise): Error: Cannot activate an already activated outlet
Error: Cannot activate an already activated outlet
    at RouterOutlet.activateWith (router.js:8748)
    at ActivateRoutes.activateRoutes (router.js:4010)
    at router.js:3947
    at Array.forEach (<anonymous>)
    at ActivateRoutes.activateChildRoutes (router.js:3942)
    at ActivateRoutes.activateRoutes (router.js:3973)
    at router.js:3947
    at Array.forEach (<anonymous>)
    at ActivateRoutes.activateChildRoutes (router.js:3942)
    at ActivateRoutes.activate (router.js:3805)
    at resolvePromise (zone-evergreen.js:797)
    at resolvePromise (zone-evergreen.js:754)
    at zone-evergreen.js:858
    at ZoneDelegate.invokeTask (zone-evergreen.js:391)
    at Object.onInvokeTask (core.js:39680)
    at ZoneDelegate.invokeTask (zone-evergreen.js:390)
    at Zone.runTask (zone-evergreen.js:168)
    at drainMicroTaskQueue (zone-evergreen.js:559)
    at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:469)
    at invokeTask (zone-evergreen.js:1603)

但是不幸的是,这不能解决问题,我找不到其他可以解决我问题的答案

@ViewChild(RouterOutlet , {static : true}) outlet: RouterOutlet;

  constructor(
    private router: Router
  ) { }

  ngOnInit(): void {
    this.router.events.subscribe(e => {
      if (e instanceof ActivationStart && e.snapshot.outlet === "administration")
        this.outlet.deactivate();
    });
  }

主页

**App-routing-module**
{
    path : 'home' ,
    component : HomepageComponent ,

    children : [
      {
        path:'agent_accueil',
        component:AgentAccueilComponent,

      },
      {
        path:'tech',
        component:TechComponent,
        children:[
          {
          path : 'sessiontek' ,
          component : SessionTekComponent
        } ,
        ]
      },
      {
        path : 'sessionag' ,
        component : SessionAgComponent
      } ,
      {
        path : 'CS' ,
        component : ReclamationComponent
      } ,
      {
        path : 'admin' ,
        component : AdminComponent,

      } ,
      {
        path: 'profil',
        component:ProfileComponent
      },
      {path:'performance',
      component:PerformenceComponent
      },
    ]
  } ,

我发现显示事件结果时存储了最后一个孩子,所以我想知道是否有可能清除它或启动路由器,否则我该如何解决此问题

0 个答案:

没有答案