Fix component reuse on channel/account videos

This commit is contained in:
Chocobozzz 2019-05-13 10:37:55 +02:00
parent 19041ac885
commit 722bca907b
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
3 changed files with 16 additions and 14 deletions

View File

@ -7,7 +7,7 @@ import { AbstractVideoList } from '../../shared/video/abstract-video-list'
import { VideoService } from '../../shared/video/video.service' import { VideoService } from '../../shared/video/video.service'
import { Account } from '@app/shared/account/account.model' import { Account } from '@app/shared/account/account.model'
import { AccountService } from '@app/shared/account/account.service' import { AccountService } from '@app/shared/account/account.service'
import { tap } from 'rxjs/operators' import { first, tap } from 'rxjs/operators'
import { I18n } from '@ngx-translate/i18n-polyfill' import { I18n } from '@ngx-translate/i18n-polyfill'
import { Subscription } from 'rxjs' import { Subscription } from 'rxjs'
import { ScreenService } from '@app/shared/misc/screen.service' import { ScreenService } from '@app/shared/misc/screen.service'
@ -50,12 +50,13 @@ export class AccountVideosComponent extends AbstractVideoList implements OnInit,
// Parent get the account for us // Parent get the account for us
this.accountSub = this.accountService.accountLoaded this.accountSub = this.accountService.accountLoaded
.subscribe(account => { .pipe(first())
this.account = account .subscribe(account => {
this.account = account
this.reloadVideos() this.reloadVideos()
this.generateSyndicationList() this.generateSyndicationList()
}) })
} }
ngOnDestroy () { ngOnDestroy () {

View File

@ -7,7 +7,7 @@ import { AbstractVideoList } from '../../shared/video/abstract-video-list'
import { VideoService } from '../../shared/video/video.service' import { VideoService } from '../../shared/video/video.service'
import { VideoChannelService } from '@app/shared/video-channel/video-channel.service' import { VideoChannelService } from '@app/shared/video-channel/video-channel.service'
import { VideoChannel } from '@app/shared/video-channel/video-channel.model' import { VideoChannel } from '@app/shared/video-channel/video-channel.model'
import { tap } from 'rxjs/operators' import { first, tap } from 'rxjs/operators'
import { I18n } from '@ngx-translate/i18n-polyfill' import { I18n } from '@ngx-translate/i18n-polyfill'
import { Subscription } from 'rxjs' import { Subscription } from 'rxjs'
import { ScreenService } from '@app/shared/misc/screen.service' import { ScreenService } from '@app/shared/misc/screen.service'
@ -50,12 +50,13 @@ export class VideoChannelVideosComponent extends AbstractVideoList implements On
// Parent get the video channel for us // Parent get the video channel for us
this.videoChannelSub = this.videoChannelService.videoChannelLoaded this.videoChannelSub = this.videoChannelService.videoChannelLoaded
.subscribe(videoChannel => { .pipe(first())
this.videoChannel = videoChannel .subscribe(videoChannel => {
this.videoChannel = videoChannel
this.reloadVideos() this.reloadVideos()
this.generateSyndicationList() this.generateSyndicationList()
}) })
} }
ngOnDestroy () { ngOnDestroy () {

View File

@ -125,8 +125,8 @@ export class AppComponent implements OnInit {
try { try {
resetScroll = false resetScroll = false
const previousUrl = new URL(window.location.origin + e1.url) const previousUrl = new URL(window.location.origin + e1.urlAfterRedirects)
const nextUrl = new URL(window.location.origin + e2.url) const nextUrl = new URL(window.location.origin + e2.urlAfterRedirects)
if (previousUrl.pathname !== nextUrl.pathname) { if (previousUrl.pathname !== nextUrl.pathname) {
resetScroll = true resetScroll = true