Метод вызывается автоматически, когда шаблон полностью загружен в angular / ionic? - PullRequest
0 голосов
/ 20 мая 2018

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

Мой HTML-файл содержит следующее:

<h1>{{ myMethod() }}</h1>

Но это вызывает функцию myMethod много раз.

Ответы [ 2 ]

0 голосов
/ 20 мая 2018

Поскольку вам нужно звонить myMethod() только один раз, лучше использовать ionViewDidLoad.Потому что это событие сработало только когда представление хранится в памяти.Это событие НЕ запускается при входе в представление, которое уже кэшировано.Вы можете узнать больше информации от здесь .

Так что если вам нужно вызывать метод (myMethod()) даже после того, как это событие сработало, лучше использовать тайм-аут внутри этого события, чтобыназови свой метод.Укажите желаемое время ожидания, соответствующее вашему сценарию.

Пример кода:

ionViewDidLoad() {
  setTimeout(() => {
    myMethod();
  }, 300);
}

Надеюсь, это поможет решить вашу проблему.

0 голосов
/ 20 мая 2018

Вы должны пойти на ngAfterViewInit крюк жизненного цикла.ngAfterViewInit () вызывается после первоначальной визуализации представления.

export class YourComponent implements AfterViewInit {    
  constructor() {    
  }

  ngAfterViewInit() {
    myMethod();
  }
}
...