vue-tap icon indicating copy to clipboard operation
vue-tap copied to clipboard

直接用v-tap时,会报错,并且会把移动端下所有的默认click覆盖掉

Open sujinw opened this issue 7 years ago • 10 comments

image

sujinw avatar Jul 05 '17 02:07 sujinw

比如input file

sujinw avatar Jul 05 '17 02:07 sujinw

可以给我看下你的html代码和js代码吗

MeCKodo avatar Jul 05 '17 04:07 MeCKodo

同样的报错

ghost avatar Jul 07 '17 06:07 ghost

各位大佬?可以给下你们的html和js代码吗?只说报错我怎么知道什么情况怎么复现呢?

MeCKodo avatar Jul 07 '17 06:07 MeCKodo

<router-link></router-lisnk> 上添加 v-tap 时 ,v-tap lib version = 3.0.2

tim 20170803154338

此时 value 可能为 undefined

wxfjq313 avatar Aug 03 '17 07:08 wxfjq313

源码中在touchend事件中调用 e.preventDefault();导致click事件无效。可能是为了解决移动端点透问题。

el.addEventListener('touchend', function (e) {
          try {
            Object.defineProperty(e, 'currentTarget', {// 重写currentTarget对象 与jq相同
              value: el,
              writable: true,
              enumerable: true,
              configurable: true
            })
          } catch (e) {
            // ios 7下对 e.currentTarget 用defineProperty会报错。
            // 报“TypeError:Attempting to configurable attribute of unconfigurable property”错误
            // 在catch里重写
            console.error(e.message)
            e.currentTarget = el
          }
          e.preventDefault();

          return touchend(e, el);
        }, false);
      }

Cyrilszq avatar Aug 09 '17 11:08 Cyrilszq

我也碰到这问题了,请问下最后是怎么解决的?

Elsie23 avatar Aug 29 '17 02:08 Elsie23

自己copy 下代码,然后把判断value条件放在value.event = e; 赋值之前~

wxfjq313 avatar Aug 29 '17 02:08 wxfjq313

谢谢 解决了!

Elsie23 avatar Aug 29 '17 03:08 Elsie23

@wxfjq313 @Elsie23 可以提个PR哦。十分感谢

MeCKodo avatar Aug 29 '17 04:08 MeCKodo