From 5723b7c8934e0d4e2ba54b508a3db95dd69f39e6 Mon Sep 17 00:00:00 2001 From: Tobias Eidelpes Date: Mon, 3 May 2021 15:25:11 +0200 Subject: [PATCH] Reload view after delete --- .../einstellungen/einstellungen.component.ts | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/frontend/src/app/component/einstellungen/einstellungen.component.ts b/frontend/src/app/component/einstellungen/einstellungen.component.ts index 272c725..44d2e8b 100644 --- a/frontend/src/app/component/einstellungen/einstellungen.component.ts +++ b/frontend/src/app/component/einstellungen/einstellungen.component.ts @@ -5,7 +5,7 @@ import {MatSnackBar} from '@angular/material/snack-bar'; import {NGXLogger} from 'ngx-logger'; import {IFeed} from '../../interfaces/feed.interface'; import {FeedService} from '../../services/feed.service'; -import {ActivatedRoute, Router} from '@angular/router'; +import {ActivatedRoute, NavigationEnd, Router} from '@angular/router'; @Component({ selector: 'app-einstellungen', @@ -18,6 +18,8 @@ export class EinstellungenComponent implements OnInit { feeds: Observable; + mySubscription; + constructor(private http: HttpClient, private _snackbar: MatSnackBar, private _logger: NGXLogger, @@ -25,6 +27,13 @@ export class EinstellungenComponent implements OnInit { private _route: ActivatedRoute, private _router: Router) { this.icon = 'assets/logo.svg'; + this._router.routeReuseStrategy.shouldReuseRoute = () => false; + this.mySubscription = this._router.events.subscribe((event) => { + if (event instanceof NavigationEnd) { + // Trick the Router into believing it's last link wasn't previously loaded + this._router.navigated = false; + } + }); this._feedService.getFeeds().subscribe( (data: any) => { this.feeds = data; @@ -36,7 +45,6 @@ export class EinstellungenComponent implements OnInit { } deleteFeed(id: number) { - console.log('Got number for deletion: ' + id); this.http.delete('http://127.0.0.1:8000/feeds/' + id + '/').subscribe( () => { this._snackbar.open('Feed erfolgreich gelöscht!', 'Schließen', {duration: 3000});