iVew实现带Icon的输入框点击图标触发 on-click 事件
2023-09-27 14:29:07 时间
项目场景:
最近在使用IVew UI组件库的时候,想在<Input>
框中实现点击图标触发on-click事件,通过阅读IVew官方文档尝试着解决了这一问题。
<Input size="large" clearable suffix="ios-search" @on-click="getBgmList" /> // 未能实现,且鼠标触碰图标无反应
解决方案:
##阅读官方文档,文档说添加图标可通过属性和slot两种方式:
<template>
// 属性添加的方式,并不具备Icon的属性,Input添加on-click事件未能生效
<div>
Props:
<Input prefix="ios-contact" placeholder="Enter name" style="width: auto" />
<Input suffix="ios-search" placeholder="Enter text" style="width: auto" />
</div>
// slot添加的方式,通过设置slot="suffix"可将图标放在Input框的末尾 ,Input添加on-click事件未能生效
<div style="margin-top: 6px">
Slots:
<Input placeholder="Enter name" style="width: auto">
<Icon type="ios-contact" slot="prefix" />
</Input>
<Input placeholder="Enter text" style="width: auto">
<Icon type="ios-search" slot="suffix" />
</Input>
</div>
</template>
后来研究发现了解决问题的真正的正确方式!
Input组件中插入Icon,并设置其slot属性值为suffix,并在@click属性后添加.native即可实现
如此,即可解决问题!
<Row>
<Col span="12">
<Input size="large" clearable v-model="queryInfo.query" @on-clear="getBgmList">
<Icon type="ios-search" slot="suffix" @click.native="getBgmList" />
</Input>
</Col>
<Col span="8" offset="1">
<Button type="primary" size="large" @click="addBgmModel = true">添加</Button>
</Col>
</Row>
相关文章
- C#_委托与事件
- 学习jQuery的on事件
- spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件)
- 事件处理器v-on:(event)/@(event)
- iOS 碰撞检測以及事件响应
- 蓝光跌破千元 2008年光存储十大事件
- HTML或者JSP页面--执行完某事件后刷新页面,重置表单,清空数据
- windows 监听事件
- 一文带你掌握js自定义事件
- 由“榆林产妇跳楼”事件 引起的安防行业随想
- Android事件分发-基础原理和场景分析
- Backbone.js 的 View 中定义事件
- 关于jQuery新的事件绑定机制on()的使用技巧
- 浅谈Flutter核心机制之--- 事件分发
- android给 TextView 加上效果和事件响应 判断是否点击函数
- qt--事件
- React Native - Keyboard API使用详解(监听处理键盘事件)