我正在使用jquery kendo ui grid并从该编辑按钮我试图调用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
要么
click: function () {
UserComponent.prototype.edit()
});
但在这两种情况下,该方法都不是来自当前实例。所以在这种情况下我无法使用http服务或任何局部变量或编辑内的方法
尝试这样的事情
click: function () {
this.edit();
}).bind(this);
要么
var self = this;
$("#grid").kendoGrid({
click: function () {
self.edit();
});