save and restore scroll position of song list
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
import {Component, OnInit} from '@angular/core';
|
||||
import {Component, OnInit, ViewChild} from '@angular/core';
|
||||
import {fader} from './animations';
|
||||
import {ScrollService} from './services/scroll.service';
|
||||
import {PerfectScrollbarComponent} from 'ngx-perfect-scrollbar';
|
||||
|
||||
@Component({
|
||||
selector: 'app-root',
|
||||
@@ -9,9 +11,24 @@ import {fader} from './animations';
|
||||
})
|
||||
export class AppComponent implements OnInit {
|
||||
public static hideLoader = () => document.querySelector('#load-bg').classList.add('hidden');
|
||||
@ViewChild('scrollbar', {static: false}) scrollbar: PerfectScrollbarComponent;
|
||||
|
||||
constructor(private scrollService: ScrollService) {
|
||||
scrollService.restoreScrollPosition$.subscribe(pos => {
|
||||
if (this.scrollbar && pos) {
|
||||
//this.scrollbar.scrollTo(pos, 0);
|
||||
this.scrollbar.directiveRef.scrollTo(0, pos, 300)
|
||||
// debugger;
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
public ngOnInit(): void {
|
||||
setTimeout(() => AppComponent.hideLoader(), 800);
|
||||
|
||||
}
|
||||
|
||||
onScoll($event: { srcElement: { scrollTop: number } }) {
|
||||
this.scrollService.saveScrollPosition($event.srcElement.scrollTop);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user