【问题标题】:Gridster 2 - EmptyCellClickCallback Can't Access Component Objects - Angular 8Gridster 2 - EmptyCellClickCallback 无法访问组件对象 - Angular 8
【发布时间】:2021-01-06 04:11:58
【问题描述】:

我已经连接了 gridster2 选项以启用通过空单元格进行点击,如下所示:

 this.options = {       
    enableEmptyCellClick: true,
    emptyCellClickCallback: this.emptyCellClick,
 }

 add(){
   //
 }

emptyCellClick(event: MouseEvent, item: GridsterItem): void {     
     this.add()
}

我收到控制台错误“this.add 不是函数”。我什至无法访问通过组件中的构造函数传入的服务。

我假设 emptyCellClick callback 在组件的其余部分之前被初始化,但我不知道如何解决这个问题。

我正在使用 Angular 8.2.12 和 gridster2。

【问题讨论】:

  • 发现需要绑定回调:this.emptyCellClick = this.emptyCellClick.bind(this);

标签: angular gridster


【解决方案1】:

我认为这是因为 this 关键字的上下文不同(即它不是指组件类)。

如果可能,试试这样的方法。

this.options = {       
    enableEmptyCellClick: true,
    emptyCellClickCallback: (event: MouseEvent, item: GridsterItem) => this.emptyCellClick(event: MouseEvent, item: GridsterItem),
 }

或者你说的绑定这个也是可以的

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-13
    • 1970-01-01
    • 2020-01-07
    • 2021-11-08
    • 2017-08-13
    相关资源
    最近更新 更多