angular2中回调函数如何调用父函数?

How to call parent function from callback function in angular 2?

这是一个class

export class ChatDetailPage {

constructor(){

}

funcA(){
     var options = {
        onSubmit: function (text) {
        //i want to be able to access funcB from here 
        this.funcB(text)
          },
this.nativeKeyboard.showMessenger(options)
}

funcB(text){
  alert (text);
}

}

在这种情况下,我如何从 Anular 2 或 Ionic 3 中的 onsubmit 回调函数调用 funcB。

提前致谢。

使用箭头函数,捕获 this 的值:

export class ChatDetailPage {

    constructor(){

    }

    funcA(){
       var options = {
           onSubmit: text => {
              //i want to be able to access funcB from here 
              this.funcB(text)
           },
       };
       this.nativeKeyboard.showMessenger(options)
   }

   funcB(text){
      alert (text);
   }
}

有时您无法使用箭头函数,f.e。当它是内置函数或库函数时。在这种情况下,您可以使用的解决方案是将 this 变量绑定到名为 self 的变量或任何您想要的变量。

funcA(){
     // bind the this variable to 'self' outside of the function scope
     var self = this;
     var options = {
        onSubmit: function (text) {
            // and use self instead of this 
            self.funcB(text)
        },
     this.nativeKeyboard.showMessenger(options)
}

funcB(text){
  alert (text);
}