首页 > 解决方案 > 如何从另一个组件返回到另一个组件而不以角度重新加载组件?

问题描述

我有一个包含多个子组件的角度组件。它还具有根据组件内的条件隐藏和显示组件的逻辑。例如。

 <div *ngFor="let data of dataSource; let i=index">
 <child-component [dataOne]="data.one"></child-component>
 <mat-divider></mat-divider>
 <second-child-component [dataTwo]="data.two"></second-child-component>
 </div>

我想实现在不刷新页面的情况下向后导航并返回到以前的位置的功能。

我通过注入Locationin 构造函数并使用它的back()方法来做到这一点。但是,它会重新初始化前一个组件。

我怎么做?任何帮助将非常感激。谢谢!

标签: javascriptangular

解决方案


如果通过返回同一个地方你的意思是滚动到那里,你可以使用这样的东西:

  scroll(el: HTMLElement) {
    el.scrollIntoView();
  }

并在这篇文章中看到更多

如果不想再次渲染数据,可以尝试用 CSS 隐藏这个或者

移出屏幕,position: absolutebottom:-10000

或者

display: None


推荐阅读