Gridster 2 - EmptyCellClickCallback 无法访问组件对象 - Angular 8
Posted
技术标签:
【中文标题】Gridster 2 - EmptyCellClickCallback 无法访问组件对象 - Angular 8【英文标题】:Gridster 2 - EmptyCellClickCallback Can't Access Component Objects - 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); 【参考方案1】:我认为这是因为 this 关键字的上下文不同(即它不是指组件类)。
如果可能,试试这样的方法。
this.options =
enableEmptyCellClick: true,
emptyCellClickCallback: (event: MouseEvent, item: GridsterItem) => this.emptyCellClick(event: MouseEvent, item: GridsterItem),
或者你说的绑定这个也是可以的
【讨论】:
以上是关于Gridster 2 - EmptyCellClickCallback 无法访问组件对象 - Angular 8的主要内容,如果未能解决你的问题,请参考以下文章
如何使 textarea 元素填充整个父 div 网格框(使用 angular-gridster2 或 gridster 库)?