Vue中根据一些条件动态注册事件的小技巧

0 阅读1分钟

1.前言

前一篇文章中,介绍了如何在electron应用中切换应用的触摸模式,来避免在windows系统触摸屏系统(ubuntu)中来回打包测试

但是还存在一个问题,就是如何动态的绑定时间,例如在windows系统

可以绑定为mousedown,mousemove,mouseup事件

但是在触摸屏系统(ubuntu)中,就需要绑定为touchstart,touchmove,touchend事件,如何根据当前的环境动态绑定这些事件呢?

2.解决办法

  • 首先判断出当前的系统,这里以ubuntu系统为例,可以判断是否为linux系统,知道当前处于开发环境还是生产环境
// 判断是否为linux环境
const isLinux = process.platform === 'linux'
// 根据当前环境设置事件
const clickType = isLinux ? 'touchend' : 'click'
  • 然后动态绑定事件名到template
<div @[clickType]="openDrawer">测试的div</div>

这样就可以根据环境动态的设置绑定的事件了

3.总结

以上就是本篇文章的所有内容了,介绍了如何根据当前的环境,动态绑定一些事件的小技巧