draggable里包裹的卡片,卡片里有个input,点击input会触发draggable的choose事件

背景:看板里的卡片,要做卡片编辑,编辑标题时,点击input输入框,会触发draggable的choose事件,导致input输入框无法聚焦

代码结构:

  @choose="onChoose"
>
  
    
  

百度el-input的阻止事件冒泡,添加了

@click.stop.native
在线运行例子,代码如下,发现确实可以阻止事件冒泡,但是在项目代码draggable里面运行发现阻止不了。

   
  
    {{text}}

最后查看dragaable源码里发现对于事件的监听不是click事件,而是如下三个:

supportPointer: Sortable.supportPointer !== false && 'PointerEvent' in window && !Safari

 if (options.supportPointer) {
      on(el, 'pointerdown', this._onTapStart);
    } else {
      on(el, 'mousedown', this._onTapStart);
      on(el, 'touchstart', this._onTapStart);
    }

所以要在pc上添加@pointerdown.stop.native

链接:
https://developer.mozilla.org/zh-CN/docs/Web/API/EventTarget/addEventListener
https://www.w3cschool.cn/fetch_api/fetch_api-ipav2pzn.html

你可能感兴趣的:(draggable里包裹的卡片,卡片里有个input,点击input会触发draggable的choose事件)