使用路由器出口活动事件获取子组件实例时,子组件未显示

时间:2020-01-27 04:49:59

标签: html angular angular8 router-outlet angular-cli-v8

在使用路由器插座时,我使用了“ 活动”事件来获取子组件实例。

路由器插座在任何新组件出现时都会发出激活事件 正在实例化,并在激活时将其停用 毁了。

示例-https://stackblitz.com/edit/angular-router-basic-example-a9jpsd?file=app/app.component.ts

示例代码–

App.component.html

<div class="container">
    <router-outlet (activate)="onActivate($event)"></router-outlet>
  </div>

App.component.ts

public onRouterOutletActivate(event : any) {
    console.log(event);
}

但是子组件在初始加载时不会显示,但是元素在DOM中。

对这个问题有任何想法吗?

1 个答案:

答案 0 :(得分:0)

返回要为其(激活)寻找的布尔值:

public onRouterOutletActivate(event : any) {
    if(event){
      console.log(event);
      return true;
    }else{ return false; }
}

如果要在(激活)上调用相同的onRouterOutletActivate函数,也只需签入app.component.html:

(activate)="onRouterOutletActivate($event)"

希望它现在对您有用!