ionic как показывать / скрывать контент при выходе из системы - PullRequest
0 голосов
/ 04 мая 2019

В моем приложении ionic регистрация и вход работает, и данные сохраняются в Firebase, но я не знаю, как скрыть или показать контент на домашней странице, когда пользователь вошел в систему или вышел из нее.

В моем authentication.service.ts uid (userID) установлен, когда пользователь вошел в систему

async signIn(email, password){
try{
  let userData = await this.afAuth.auth.signInWithEmailAndPassword( email, password);
  this.uid = this.afAuth.auth.currentUser.uid;
  return { success: true, uid: this.uid, email: email };
}
catch(error){
  return { success: false, error: error.message };
}
}

home.page.html

<ion-card-content>
sign up here
  <ion-button class="btnSignUp" fill="clear" color="medium" (click)="showSignup()">
      Sign up
  </ion-button>
</ion-card-content>

Так что я хочу использовать эту информацию вauthentication.service.ts и отображать эту кнопку регистрации только в моем home.page.html, когда пользователь НЕ вошел в систему.

1 Ответ

0 голосов
/ 04 мая 2019

В вашем home.page.ts сделайте следующее:

export class Home implements OnInit{
  currentUser : any;
  showBtn     : boolean = true;
  constructor(public afAuth: AngularFireAuth) {}

  ngOnInit(){
    this.currentUser = this.afAuth.auth.currentUser;
    if(this.currentUser === null){
     this.showBtn = false;
      }
 }

Тогда в вашем html:

<ion-card-content *ngIf="showBtn">
sign up here
  <ion-button class="btnSignUp" fill="clear" color="medium" (click)="showSignup()">
  Sign up
 </ion-button>
</ion-card-content>

Здесь вы сначала получаете currentUser, если пользователь не вошел в систему, тогда вы можете присвоить showBtn для false, а затем в html использовать ngIf, чтобы показать / скрыть кнопку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...