滚动到分页页面更改的页面顶部,而无需路由器交互

时间:2019-02-15 10:08:06

标签: scroll pagination angular7 angular-universal

我正在开发一个应用程序,该应用程序使用ngb-pagination列出一些数据,并且不使用路由进行更改,因此我们不能使用与路由器相关的scrollPositionRestoration。 我的问题是我想将当前视图(由于分页位于页面底部)移动到顶部。我无法直接访问通用的dom。所以window.scrollTo退出了。

什么是实现我想要的目标的好方法?

router-scroll已退出,因为没有真正的路由发生 禁止直接dom访问

该片段不会对该问题产生任何影响。我只想扩展分页页面更改发生时调用的现有当前函数。

1 个答案:

答案 0 :(得分:0)

仅在这种情况下,您可以检查代码是否在客户端上执行并调用window.scrollTo。虽然没有太多的优雅。

import { PLATFORM_ID, Inject } from '@angular/core';
import { isPlatformBrowser } from '@angular/common';

constructor(
  @Inject(PLATFORM_ID) private platform,
) {}

goToTop() {
  it (isPlatformBrowser(this.platform)) {
    window.scrollTo(...);
  }
}