vue iview的小坑之icon不能直接加点击事件

2 篇文章 0 订阅

最近因为项目新增需求,遇到了一个小坑,特此记录一下。主要是iview的坑。项目使用框架是:vue+iview

要实现的功能是实现点击复制图标达到复制功能(完成ctrl+v的功能)。

代码大概如下:

页面:

 <span @click="clickCopy(item.to)">  item.to是循环出来的内容,这里写你要复制的内容
   <Icon type="ios-copy-outline" size="24" style="vertical-align: top;"/>
 </span>

方法:

clickCopy(text) {
                this.$tools.copyText(text) 这个方法是放在tools.js中的公共方法,所以写的是this.$tools.copyText
                this.$Message.config({提示框,根据需要,可改成其他形式
                    content: '复制成功',
                    duration: 2,
                    top: 300,
                });
                this.$Message.success({
                    content: '复制成功'
                });
            }
export function copyText(text) {
      var input = document.getElementById("input_copy");
      input.value = text; // 修改文本框的内容
      input.select(); // 选中文本
      document.execCommand("copy"); // 执行浏览器复制命令
}

坑:iview的icon不能直接加点击事件。

解决1:我的解决方法是外边包了一层span标签。将点击事件加到span标签上。

解决2::原生事件要加修饰符。<Icon @click.native="handleClickFunction">

以上是我在工作中实际遇到的问题,记录一下,希望对大家有所帮助。如果我写的文章有错误,欢迎大家批评指正哈。

 

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值