我有一个侧边栏,我从英雄列表中选择。每个英雄都有一个id并且单击只更改路由参数(例如:/ hero / id)。我使用routerLink和routerLinkActive来改变活动项的颜色。
对于一些英雄,我的组件中的表中有很多行,因此当我导航到其id时,DOM的更新速度很慢。我现在面临的问题是,当我点击侧边栏中的这个英雄项目时,新项目的选择颜色不会立即改变。
我认为这是因为DOM没有为表组件更新,因此整个应用程序(包括侧边栏)的视图不会更新。
有什么方法可以强制侧边栏视图先更新,然后更新表的视图?理想情况下,只要单击一个新项目,我就会在表组件中显示一个微调器,然后一旦加载大型表的DOM就会更新它。
****添加代码:
补充工具栏模板:
<ul *ngFor="hero of heroes">
<li routerLink="heroes/{{hero.id}}" routerLinkActive="active">
</ul>
英雄组件:
this.route.params.subscribe((params: ParamMap) => {
updateData(params.get(id)) //This takes some time to update the DOM as content is large
}