Почему сервис [@injectable ()] продолжает прослушивать функции в angular?

Я просто проверяю, является ли пользователь loggedin или нет из службы, но почему он продолжает прослушивать функции?

loggedin(){
  const adminvalue = localStorage.getItem('user')
  console.log(adminvalue)
  if(adminvalue){
    return true
  }
  else {
    return false
  }
}

Значение admin продолжает печатать в консоли.

Зачем направлять на страницу проверки?

HTML

<button (click)="login()" *ngIf="!service.loggedin()">Login</button>
<button (click)="logout()" *ngIf="service.loggedin()">Logout</button>

См. В консоль stackblitz

Если вы вызовете метод из своего шаблона, он будет вызываться бесконечно ... Вот почему это происходит. здесь вы можете найти хорошее объяснение. blog.appverse.io/…

Anuradha Gunasekara 11.04.2018 13:24
service.loggedIn() вызывается при каждом запуске обнаружения изменений.
Tomasz Kula 11.04.2018 13:24

ваша функция вызывается в каждом цикле обнаружения изменений. и angular запускает x2 цикла в режиме разработки

Vikas 11.04.2018 14:29
1
3
33
0

Другие вопросы по теме