Scroll Top en angular2

Estoy trabajando en una aplicación web angular2 donde necesito ayuda en lo siguiente. Mi página consta de múltiples componentes. Quiero desplazar la parte superior de la página cuando el usuario hace clic en un botón. He intentado document.body.scrollTop = 0; pero esto no funciona en Chrome. He intentado document.documentElement.scrollTop=0;window.scrollTo(0, 0); pero no funciona

importar así,

import { Inject} from "@angular/core";
import { DOCUMENT } from '@angular/platform-browser';

En tu constructor añade esto,

constructor(@Inject(DOCUMENT) private document: Document) { }

A continuación, puede establecer el desplazamiento en cualquier lugar como este,

this.document.body.scrollTop = 0;
Comentarios (8)

He resuelto mi problema de desplazamiento angular utilizando la vinculación de datos:

<div class="container" [scrollTop]="scrollTop"> ... </div>

con los estilos:

.container {
  height: 100%;
  scroll: auto;
  position: relative;
}
Comentarios (1)

En app.component.ts

const mainDiv = document.getElementById('mainDIV');
mainDiv.scrollTop = 0;

En app.component.html

<div id="mainDIV" style="height: 100vh;overflow: auto;">



</div>
Comentarios (0)