diff --git a/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts b/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts index 262dfa7d..0f6f8957 100644 --- a/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts +++ b/src/app/main/content/apps/contacts/sidenavs/main/main.component.ts @@ -1,26 +1,25 @@ -import { Component, OnInit } from '@angular/core'; +import { Component, OnDestroy } from '@angular/core'; import { ContactsService } from '../../contacts.service'; +import { Subscription } from 'rxjs/Subscription'; @Component({ selector : 'fuse-contacts-main-sidenav', templateUrl: './main.component.html', styleUrls : ['./main.component.scss'] }) -export class FuseContactsMainSidenavComponent implements OnInit +export class FuseContactsMainSidenavComponent implements OnDestroy { user: any; filterBy: string; + onUserDataChangedSubscription: Subscription; constructor(private contactsService: ContactsService) { - this.filterBy = 'all'; - this.contactsService.onUserDataChanged.subscribe(user => { - this.user = user; - }); - } - - ngOnInit() - { + this.filterBy = this.contactsService.filterBy || 'all'; + this.onUserDataChangedSubscription = + this.contactsService.onUserDataChanged.subscribe(user => { + this.user = user; + }); } changeFilter(filter) @@ -28,4 +27,9 @@ export class FuseContactsMainSidenavComponent implements OnInit this.filterBy = filter; this.contactsService.onFilterChanged.next(this.filterBy); } + + ngOnDestroy() + { + this.onUserDataChangedSubscription.unsubscribe(); + } }