在antdv组件库中,把折叠面板和上传控件一起使用,当点击上传按钮时,虽然会弹出文件选择窗口,但同时每次点击时折叠面板都会切换打开状态。
这是由于事件冒泡,当点击图标的时候穿透到了底下的折叠面板,所以两个事件响应都执行了
要解决这个问题,只需要在extra
插槽的顶层标签加上@click.stop.prevent
即可,示例如下
<div slot="extra" @click.stop.prevent>
<a-upload
name="file"
:file-list="fileList"
:multiple="true"
:customRequest="customRequest"
@change="handleFileChange"
>
<a-icon type="upload" >
</a-icon>
</a-upload>
</div>
如果其它组件遇到事件冒泡也是这样的一个处理过程。
参考链接: