Próbuję użyć obserwowalne w moim szablonu przez:Zastosowanie zauważalne w Szablon
<md-nav-list>
<a md-list-item *ngIf="!isAuth() | async" [routerLink]="['login']" (click)="sidenav.toggle()">Login</a>
<a md-list-item *ngIf="isAuth() | async" (click)="logout()" (click)="sidenav.toggle()">Logout</a>
</md-nav-list>
iw moim module:
isAuth(): Observable<boolean> {
return this.loginservice.getAuthenticated()
.map(user => { if(user){
if(user.hasOwnProperty('uid')){
return true;
} else {
return false;
}
} else {
return false;
}
})
}
Więc mój problem:
Jeśli jestem loggedin i obserwowalne zwraca true -> cool mój element menu pojawia się
, ale jeśli obserwowalne zwraca false -> moje menu jest emp ty -> co jest nie tak?
ładnie wyjaśnione +1, ale w jaki sposób może on obsłużyć dokładnie odwrotnie walizka? –
Odnośnie pierwszego problemu, powinieneś wyjaśnić, jak można go naprawić za pomocą nawiasów. – StriplingWarrior
@StriplingWarrior to oczywiście łatwe, jeśli masz na myśli '! (IsAuth() | async)', ale nie sądzę, że subskrybowanie dwa razy na tym samym obserwowalnym jest dobrym pomysłem. Chciałbym zapisać się do niego na poziomie komponentu zamiast ... – smnbbrv