从javascript函数调用angular2方法

从javascript函数调用angular2方法,javascript,angular,angularjs-scope,kendo-grid,Javascript,Angular,Angularjs Scope,Kendo Grid,我正在使用jquery剑道ui网格,并试图从该编辑按钮调用angular2方法。我的设置很简单: export class UserComponent implements OnInit { constructor( @Inject(UserService) public userService: UserService, @Inject(FormBuilder) public fb: FormBuilder) { ... } edit():void{ } onInit()

我正在使用jquery剑道ui网格,并试图从该编辑按钮调用angular2方法。我的设置很简单:

export class UserComponent implements OnInit {
     constructor( @Inject(UserService) public userService: UserService,  @Inject(FormBuilder) public fb: FormBuilder) {
...
}


 edit():void{ }

 onInit() {
   $("#grid").kendoGrid({
   ....
   click: function () {
     // Call angular2 method of the current instance
   });
}
}
它的工作代码唯一的问题是这个。我可以通过以下方式调用angular2方法

 click:this.edit


但在这两种情况下,该方法都不是来自当前实例。因此,在这种情况下,我无法使用http服务或编辑中的任何局部变量或方法

click: function () {
   this.edit();
}).bind(this);


所有角度方法都是JavaScript,所以你的问题标题根本没有意义。是的,所有角度方法都是JavaScrut,但我的标题“angular2方法”,我指的是实例的方法。因为如果您只调用this.edit,它将不会从当前实例执行该方法。
click: function () {
   this.edit();
}).bind(this);
var self = this;
$("#grid").kendoGrid({

   click: function () {
     self.edit();
   });