需求: 阻止element组件中的<el-input/>的粘贴功能

实现思路: <el-input/>组件是由外层<div>和内层的<input>组成的, 根据浏览器的事件传递机制(先捕获,后冒泡): 粘贴的时候会先执行绑定在外层div上的paste事件捕获方法, 然后再到内层的input, 因此可以在组件上捕获监听paste事件, 并阻止向下传播即可

代码实现:

<template>
<section class="p-10">
<div class="app">
<el-input v-model="val" placeholder="请输入内容" @paste.native.capture.prevent="handlePaste"/>
</div>
</section>
</template>
<script>
export default {
data() {
return {
val: ''
};
}
};
</script>

事件修饰符说明:

  • native: 表明这个是dom的原生事件,如果不加native, vue会认为paste是一个自定义事件,必须要在组件内手动触发, 那么在粘贴的时候自然就不会触发了
  • capture: 表明这个方法在捕获阶段执行,默认为冒泡执行,参考addEventListener方法中的useCapture参数
  • prevent: 相当于event.preventDefault阻止默认行为, 同时也会阻止事件的向下传递和向上冒泡
 
嗯,就酱~~
链接:https://www.jianshu.com/p/4d9d83fed298

最新文章

  1. MOD
  2. js判断手机浏览器并跳转到手机网站
  3. 分享一下spark streaming与flume集成的scala代码。
  4. DevExpress 中 WaitForm 使用
  5. GRUB加密
  6. 关于调试程序接收通过adb发送带有参数的广播问题
  7. js url传值中文乱码之解决之道
  8. c语言中数组相关问题
  9. 图论(差分约束系统):POJ 1201 Intervals
  10. Android 启动APP黑屏解决方案
  11. 8、关于viewWithTag
  12. 获取CPU系列号,硬盘系
  13. iOS学习——内存泄漏检查及原因分析
  14. javacript 组合使用构造函数模式和原型模式
  15. 利用SSH端口转发实现跨机器直接访问
  16. linux下安装nginx与配置
  17. bzoj1001狼抓兔子
  18. windows下升级node&amp;npm
  19. ASP.NET Web API queryString访问的一点总结
  20. 使用gunicorn部署Flask项目

热门文章

  1. 编写C函数的技术-《lua程序设计》 27章 学习
  2. web本地存储localStorage和sessionStorage
  3. windows与虚拟机共享文件夹设置
  4. 【C#系列】你应该知道的委托和事件
  5. json.Decoder vs json.Unmarshal
  6. 一些移动端的ui框架
  7. Mybatis(二):Mybatis的映射文件sqlmapper详解
  8. 【bzoj1875】【SDOI2009】【HH去散步】
  9. PILE读书笔记_基础知识
  10. 小程序swiper配置参数使用