问题标题
如何在使用vchart时,在onbrushEnd事件最后清除框选?
问题描述
我正在使用@visactor/vchart图表库进行图表开发,遇到了一个问题,我需要在onbrushEnd事件最后清除brush的框选,但是目前我没有找到合适的api来实现这个需求。
解决方案
目前确实没有直接对应这个需求的api,但是这里有一个较为特殊的实现方式可以求解该问题,具体代码如下:
vchart.on('brushEnd', (params) => {
vchart.getChart()?.getAllComponents().forEach(c => {
if(c.name === 'brush') {
c?._brushComponents?.forEach(c => c._container.incrementalClearChild())
}
})
})
以上解决方案是当触发'brushEnd'事件后,获取所有的组件,并遍历这些组件,如果某个组件名为'brush',就清除该组件。
结果展示
代码运行后,可以实现在onbrushEnd事件结束后清除框选。
在线demo:codesandbox.io/p/sandbox/g…
相关文档
- VisActor官网:www.visactor.io/
- VChart事件:www.visactor.io/vchart/api/…