Ошибка выполнения: невозможно возобновить активность. TypeError: this.callResume не является функцией в родном скрипте angular2

На возобновить событие я должен вызовите этот метод this.callResume(). Когда я вызываю этот метод, я получаю ошибку времени выполнения:

TypeError: this.callResume не является функцией

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

  constructor() {

  applicationOn(resumeEvent, function (args: ApplicationEventData) {


    if (args.android) {
        // For Android applications, args.android is an android activity class.
        console.log("Activity: " + args.android);

      this.callResume();

    } else if (args.ios) {
        // For iOS applications, args.ios is UIApplication.
        console.log("UIApplication: " + args.ios);
     }
    });

}

  callResume():void{

  console.log("ResumeCalled", "Test");

  }

person Steve    schedule 26.08.2017    source источник
comment
Используйте обозначение стрелочной функции ()=> вместо function. См. здесь: stackoverflow.com/a/45758744/1791913   -  person Faisal    schedule 26.08.2017


Ответы (1)


Используйте обозначение стрелочной функции ()=> вместо function. Измените свой код на следующий:

constructor() {

  applicationOn(resumeEvent,  (args: ApplicationEventData) => {
    if (args.android) {
        // For Android applications, args.android is an android activity class.
        console.log("Activity: " + args.android);

      this.callResume();

    } else if (args.ios) {
        // For iOS applications, args.ios is UIApplication.
        console.log("UIApplication: " + args.ios);
     }
    });

}
person Faisal    schedule 26.08.2017