LogicFlow
LogicFlow copied to clipboard
[Bug report]开启框选功能的回调里面可以监听blank:mousedown,监听不到blank:mouseup事件
问题描述
框选完只打印了mousedown
最简复现demo
一般来说通过文字和截图的描述我们很难定位到问题,为了帮助我们快速定位问题并修复,请按照以下指南编写并上传最简复现demo:https://codesandbox.io/s/reverent-microservice-fqlpuf?file=/src/index.js
您好,感觉提出,能给出您需要这个事件的具体使用场景吗?我们会根据使用场景评估这个功能的必要性。
我想根据blank:mousedown和blank:mouseup,在selection:selected事件时生成一个分组,分组的区域就是黄色虚线框选的区域,具体如下面代码:
this.lf.extension.dndPanel.setPatternItems([{
label: '选区',
className: 'custom-selection',
callback: () => {
this.lf.openSelectionSelect()
this.lf.once('blank:mousedown', (e) => {
this.mousedownPoint = [e.layerX, e.layerY]
})
this.lf.once('blank:mouseup', (e) => {
this.mouseupPoint = [e.layerX, e.layerY]
})
this.lf.once('selection:selected', (data) => {
this.lf.addNode({
type: 'my-group',
x: (this.mouseupPoint[0] + this.mousedownPoint[0]) / 2,
y: (this.mouseupPoint[1] + this.mousedownPoint[1]) / 2,
children: data.map(item => item.id)
})
this.lf.closeSelectionSelect()
})
}
}])
目前您可以通过'selection:selected'事件返回的所有节点,计算出选区的范围。在后面的1.3.0版本中,我们会把选区的返回直接返回出来。
好的,期待1.3.0版本发布