取消突出显示纸上的所有 cellViews - jointjs
Unhighlight all cellViews on paper - jointjs
我们最近添加了 jointjs 的突出显示功能,以向用户显示当前突出显示和选中的 cellView。但是,如果用户在外部单击,我们希望取消突出显示在纸上绘制的所有 cellView。在调查了官方文档后,我们最终无法找到满足我们要求的解决方案。
突出显示单元格视图的代码是:
this.paper.on('cell:pointerclick', (cellView: any) => {
cellView.highlight();
});
为了解决这个问题,我们遍历当前论文(区域)上显示的所有cellView,并调用unhighlight函数。这个逻辑放在 blank:pointerdown
回调中 - 这样我们就可以处理实际 cellViews 之外的所有点击。
this.paper.on('blank:pointerdown', (evt, x, y) => {
this.paper.findViewsInArea(this.paper.getArea()).forEach(cell => {
cell.unhighlight();
});
});
希望对您有所帮助。
我们最近添加了 jointjs 的突出显示功能,以向用户显示当前突出显示和选中的 cellView。但是,如果用户在外部单击,我们希望取消突出显示在纸上绘制的所有 cellView。在调查了官方文档后,我们最终无法找到满足我们要求的解决方案。
突出显示单元格视图的代码是:
this.paper.on('cell:pointerclick', (cellView: any) => {
cellView.highlight();
});
为了解决这个问题,我们遍历当前论文(区域)上显示的所有cellView,并调用unhighlight函数。这个逻辑放在 blank:pointerdown
回调中 - 这样我们就可以处理实际 cellViews 之外的所有点击。
this.paper.on('blank:pointerdown', (evt, x, y) => {
this.paper.findViewsInArea(this.paper.getArea()).forEach(cell => {
cell.unhighlight();
});
});
希望对您有所帮助。