Скрыть модальный, когда форма входа успешна - PullRequest
0 голосов
/ 24 октября 2018

Я просто пытаюсь закрыть модальный режим, если мой логин успешен.

Когда я добавляю метод basicModal.hide () в любом месте моего кода, кнопка входа в систему исчезает.

HTML:

<!-- loginModal -->
<div class="container">
  <div class="modal fade" id="loginModalCenter" #loginModalCenter tabindex="-1" role="form" aria-labelledby="ModalCenterTitle"
    aria-hidden="true">

....

          <!-- Sign in button -->
          <button class="btn btn-success btn-block my-4" type="submit">Login</button>

        <!-- form login -->

TS: .....

    this.loading = true;
    this.authenticationService
      .login(this.f.email.value, this.f.password.value, result => {
        if (result) {
          console.log('Logged in ' + result);
          this.loginModalCenter.hide();
        } else {
          console.log('not a valid user');
        }
      });
    }
}

1 Ответ

0 голосов
/ 24 октября 2018

Вы можете использовать логическое значение для этого.Установите bool loggedIn = true для вашего класса, затем установите * ngIf = "! LoggedIn" в вашем loginModalCenter.

Наконец, просто установите для loggedIn значение true для результата функции входа в систему.

Итак, TS:

//before constructor()
loggedIn: boolean = false;


//On login
this.authenticationService
  .login(this.f.email.value, this.f.password.value, result => {
    if (result) {
      console.log('Logged in ' + result);
      this.loginModalCenter.hide();
      this.loggedIn = true;
    }

И по шаблону:

<div class="modal fade" *ngIf="!loggedIn" id="loginModalCenter" #loginModalCenter tabindex="-1" role="form" aria-labelledby="ModalCenterTitle"
aria-hidden="true">

Надеюсь, что поможет!

...