异常情况
点击某一项后drawer就异常关闭了
重现异常
准备一个空白项目,只有antdv、echarts
<template>
<div style="height: 400px;width: 400px" ref="chart"></div>
<a-drawer v-model:open="drawerOpen" v-model:title="title" height="auto" placement="top">
23123123
</a-drawer>
</template>
再设置监听点击事件
myChart.on('click', function (params) {
drawerOpen.value = true
})
分析
只有drawer没有经过手指按下位置时才会导致异常关闭
经过观察,是由于手指按下和抬起都被算作了点击事件,按下一次会触发两次点击事件,第二次直接点到了mask遮罩层上了。
所以得阻止第二次事件
找了一辈子,总算是找到了,echarts的加上 params.event.stop() 就可以解决
myChart.on('click', function (params) {
params.event.stop()
drawerOpen.value = true
})
但是G2图表的暂时没有找到类似方法,只可以通过延时(setTimeout)执行来解决(权宜之计,不太靠谱)
试了下,200ms左右差不多