位置: IT常识 - 正文

【uniapp】 的事件处理详解(uniapp实战)

编辑:rootadmin
【uniapp】 的事件处理详解

推荐整理分享【uniapp】 的事件处理详解(uniapp实战),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:/uniapp,uniapp示例,uniapp常用方法,uniapp实战教程,uniapp实战教程,uniapp实战教程,uniapp示例,uniapp示例,内容如对您有帮助,希望把文章链接给更多的朋友!

UniApp 是一个跨平台的开发框架,支持多种前端框架(Vue、React、Angular 等),并能打包成多种运行平台(H5、小程序、App 等)。在 UniApp 中,事件处理非常重要,通过事件处理可以实现用户与应用程序之间的交互。下面是 UniApp 中常用的事件处理方式:

1. 绑定事件

在模板中可以通过 @ 符号绑定事件,例如:

<button @click="handleClick">点击我</button>这里绑定了一个 click 事件,并且绑定的函数是 handleClick。2. 事件修饰符【uniapp】 的事件处理详解(uniapp实战)

事件修饰符是指在绑定事件时使用的一些特殊符号,用于修改事件的行为。常见的事件修饰符包括:

prevent:阻止默认行为stop:阻止事件冒泡capture:使用事件捕获模式self:只有当事件是从事件源本身触发时才触发回调函数once:只触发一次回调函数passive:提高页面滚动的流畅度

例如:

<!-- 阻止默认行为 --><button @click.prevent="handleClick">点击我</button><!-- 阻止事件冒泡 --><button @click.stop="handleClick">点击我</button><!-- 使用事件捕获模式 --><button @click.capture="handleClick">点击我</button><!-- 只有当事件是从事件源本身触发时才触发回调函数 --><button @click.self="handleClick">点击我</button><!-- 只触发一次回调函数 --><button @click.once="handleClick">点击我</button><!-- 提高页面滚动的流畅度 --><button @click.passive="handleClick">点击我</button>.prevent 和 .stop 是两种不同的事件修饰符,虽然它们有一些相似之处,但是在事件处理中有不同的作用。1 .prevent 用于阻止事件的默认行为,例如阻止 <a> 标签的默认跳转、阻止表单的默认提交等。如果一个事件被 .prevent 修饰符修饰了,则在事件触发时,不会执行事件的默认行为,而只会执行`绑定的事件处理函数`。2 .stop 用于阻止事件的冒泡传播,事件冒泡是指当一个元素触发事件时,该事件会向父级元素传播。如果一个事件被 .stop 修饰符修饰了,则在事件触发时,不会向上层元素传播该事件,而只会在当前元素内部进行处理。因此,.prevent 和 .stop 的作用是不同的,但是它们都能够阻止事件的默认行为。.prevent 用于阻止元素的默认行为,.stop 用于阻止事件的冒泡传播。具体示例:当一个链接被点击时,会触发 click 事件。如果链接没有设置 href 属性,则默认的行为是不进行跳转,但如果设置了 href 属性,则会跳转到 href 指定的页面。在这种情况下,可以使用 .prevent 和 .stop 修饰符来阻止链接的默认跳转行为和冒泡传播。我们给链接设置了 href 属性,并绑定了 click 事件和 handleLinkClick 方法。同时,我们在链接上使用了 .prevent 和 .stop 修饰符来阻止默认的跳转行为和冒泡传播。<template> <div @click="handleDivClick">//上层点击事件。用了检测下面的点击事件有没有冒泡上来 <a href="https://www.example.com" @click.prevent.stop="handleLinkClick">点击我</a> </div></template><script>export default { methods: { handleLinkClick() { console.log('内部事件————链接被点击了'); }, handleDivClick() { console.log('外部事件————div 被点击了'); } }};</script>在点击链接时,控制台会输出 【内部事件————链接被点击了】链接被点击了,而不会进行跳转。同时,由于使用了 .stop 修饰符,事件也不会向上层元素冒泡传播,因此点击链接时不会触发外部事件 handleDivClick 方法。1、如果我们把 .prevent 修饰符去掉,点击链接时会进行跳转。说明默认行为存在,但是被阻止了。2、如果把 .stop 修饰符去掉,点击链接时会触发 handleDivClick 方法。说明点击事件冒泡了。这说明了 .prevent 和 .stop 修饰符的区别,.prevent 可以阻止默认行为,.stop 可以阻止冒泡传播。默认行为指的是元素在触发某些事件时,浏览器会执行的预设行为。例如,当用户点击一个链接时,浏览器默认会跳转到该链接所指定的 URL。当用户提交一个表单时,浏览器默认会向服务器发送表单数据并刷新页面。这些行为是浏览器内置的,可以通过 JavaScript 代码来阻止或修改。3. 内置事件

在 UniApp 中,还有一些内置事件可以使用。这些事件是指在特定情况下自动触发的事件,例如:

onLoad:页面加载完成时触发onReady:页面初次渲染完成时触发onShow:页面展示时触发onHide:页面隐藏时触发onUnload:页面卸载时触发

这些事件可以在页面或组件中使用,例如:

export default { onLoad() { console.log('页面加载完成'); }, onReady() { console.log('页面初次渲染完成'); }, onShow() { console.log('页面展示'); }, onHide() { console.log('页面隐藏'); }, onUnload() { console.log('页面卸载'); }}4. 自定义事件

在 UniApp 中,还可以通过 uni.emit和uni.emit 和 uni.emit和uni.on 方法来实现自定义事件的处理。例如:

// 发送自定义事件uni.$emit('myEvent', {data: '自定义事件参数'});// 监听自定义事件uni.$on('myEvent', (data) => { console.log('接收到自定义事件', data);});这里通过 uni.$emit 发送了一个名为 myEvent 的自定义事件,并传递了一个参数 {data: '自定义事件参数'}。在需要监听该事件的地方,可以使用 uni.$on 方法来监听该事件,并在回调函数中处理事件。5. 事件对象

在事件处理函数中,可以通过 $event 参数来获取事件对象,事件对象包含了事件的一些信息,例如:

type:事件类型 target:事件源 currentTarget:当前组件 detail:自定义数据 例如:

<button @click="handleClick">点击我</button>methods: { handleClick($event) { console.log('事件类型', $event.type); console.log('事件源', $event.target); console.log('当前组件', $event.currentTarget); console.log('自定义数据', $event.detail); }}以上就是 UniApp 中常用的事件处理方式,包括绑定事件、事件修饰符、内置事件、自定义事件和事件对象。掌握这些知识,可以更加灵活地处理事件,实现丰富的用户交互效果。
本文链接地址:https://www.jiuchutong.com/zhishi/292955.html 转载请保留说明!

上一篇:【vue】vuex中modules的基本用法(vuex model)

下一篇:面试官:一千万的数据,你是怎么查询的(面试官:一千万是真的吗)

  • 健康码接龙怎么在微信接龙(健康码接龙怎么在qq接龙)

    健康码接龙怎么在微信接龙(健康码接龙怎么在qq接龙)

  • 手机进水黑屏是内屏烧了吗(手机进水黑屏是内屏坏了还是外屏)

    手机进水黑屏是内屏烧了吗(手机进水黑屏是内屏坏了还是外屏)

  • 微信动态无法删除(微信动态为什么删不了)

    微信动态无法删除(微信动态为什么删不了)

  • 微信怎么发live(微信怎么发live图)

    微信怎么发live(微信怎么发live图)

  • 屏幕怎么查京东方还是三星的(京东怎么看有没有碎屏险)

    屏幕怎么查京东方还是三星的(京东怎么看有没有碎屏险)

  • miui开发版公测多久更新一次(MIUI开发版公测答题)

    miui开发版公测多久更新一次(MIUI开发版公测答题)

  • 手机怎么查序列号(手机怎么查序列号真假)

    手机怎么查序列号(手机怎么查序列号真假)

  • 朋友圈一定要发图片吗(朋友圈一定要发工作吗)

    朋友圈一定要发图片吗(朋友圈一定要发工作吗)

  • 华为同屏功能在哪里(华为同屏app)

    华为同屏功能在哪里(华为同屏app)

  • 刚开通黄钻可以取消吗(黄钻开通后可以马上取消么)

    刚开通黄钻可以取消吗(黄钻开通后可以马上取消么)

  • iphonex小圆点怎么设置(苹果小圆点怎么设置出来苹果x)

    iphonex小圆点怎么设置(苹果小圆点怎么设置出来苹果x)

  • win7启动修复无法自动修复此计算机怎么办(win7启动修复无法检测到问题)

    win7启动修复无法自动修复此计算机怎么办(win7启动修复无法检测到问题)

  • 苹果手机拍视频如何全景拍(苹果手机拍视频模糊是怎么回事)

    苹果手机拍视频如何全景拍(苹果手机拍视频模糊是怎么回事)

  • 大王卡看优酷免流吗(大王卡优酷免会员吗)

    大王卡看优酷免流吗(大王卡优酷免会员吗)

  • vivoy51应用权限在哪(vivo的应用权限)

    vivoy51应用权限在哪(vivo的应用权限)

  • iphone6s支持ios13吗(iphone6s支持ios)

    iphone6s支持ios13吗(iphone6s支持ios)

  • xr支持18w快充吗(苹果xr支持18w充电吗)

    xr支持18w快充吗(苹果xr支持18w充电吗)

  • 支付宝步数和手机不一致(支付宝步数和手机步数不一样)

    支付宝步数和手机不一致(支付宝步数和手机步数不一样)

  • 如何判断kindle卡索引(如何判断kindle是否越狱)

    如何判断kindle卡索引(如何判断kindle是否越狱)

  • qq小火花掉了怎么补上(qq小火花掉了怎么找回来)

    qq小火花掉了怎么补上(qq小火花掉了怎么找回来)

  • 如何把qq名片头像居中(如何把qq名片头像换掉)

    如何把qq名片头像居中(如何把qq名片头像换掉)

  • 时光相册能制作小视频吗(时光相册制作的音乐相册在哪里)

    时光相册能制作小视频吗(时光相册制作的音乐相册在哪里)

  • 红钻是什么(yy蓝钻红钻是什么)

    红钻是什么(yy蓝钻红钻是什么)

  • Python中的defaultdict函数(Python中的关键字)

    Python中的defaultdict函数(Python中的关键字)

  • 实收资本多长时间缴纳完?
  • 缴纳城镇土地使用税
  • 城市生活垃圾处理收费管理办法
  • 通用发票
  • 发票跨季度可以用吗
  • 累计减税费用是什么意思
  • 汇算清缴中研发费用中其他费用可抵扣的比例是多少
  • 非货币性资产交换补价大于25%的会计处理
  • 缓缴税款到期缴纳罚款吗
  • 建筑工程属于开票项目吗
  • 税号变更需要变更什么
  • 营改增后停车费税率
  • 特许权使用费的收入确认时间
  • 不缴地税国税可停票吗?
  • 如何看待餐饮企业文化
  • 股权转让收益算利润吗
  • 季度不超30万需计提增值税吗
  • 留存收益账务处理视频
  • 售后回租 出租方
  • 2018新个税
  • 个人从价计征房产税
  • kali linux安装kde桌面
  • 没有系统U盘,电脑密码忘记了如何打开电脑
  • 退付手续费核对过期没处理怎么办
  • 政府收储土地补偿款账务处理
  • 住房公积金余额查询
  • 修改系统散热方案
  • 在建工程明细科目设置
  • 销售补差是怎么算的
  • 补缴增值税怎么做账
  • 客户预付款了尾款怎么办
  • 竣工结算的依据有哪些?
  • 企业所得税若干问题
  • linux中断原理
  • fs209e是什么意思
  • php显示文件目录及路径
  • 前端vue后端node
  • 计提房产税会计分录怎么做账
  • php限制访问频率
  • echarts.
  • vue element ui
  • 广东省工科赛智能配送
  • rf-kill
  • 所得税需要结转么
  • 会计月末账务处理方法
  • 第二季度所得税可以弥补以前年度亏损吗
  • 拖欠工程款利息的司法解释
  • 微擎最新破解版
  • 开票品名不一样有什么关系
  • 企业收到的政府无偿拨付的款项应当全部计入递延收益
  • 个税累计预扣法导致税交多了
  • 农产品增值税免税发票怎么抵扣
  • 网银转账往来款怎么做账
  • 个税的代扣代缴
  • sql查询表中指定数据
  • mysql密码忘了
  • 用于员工福利的专票可以抵扣吗
  • 车船税征收范围有
  • 结账的内容和程序是什么
  • 计提投资性房地产折旧会计科目
  • 租出的固定资产
  • 滞纳金比例多少
  • 社保逾期滞纳金和利息
  • 增值税普通发票几个点
  • 印花税属于什么科目
  • 工业企业检查表
  • 用企业管理器创建一个备份设备
  • win8.1应用商店还能用吗
  • 跨网段加入域配置
  • 在solaris8下
  • windowssystem32configsystem 损坏
  • kernel32在哪个文件夹
  • linux shell !
  • win10怎么关闭讲述人模式
  • angular指令详解
  • Div CSS absolute与relative的区别小结
  • python读取一个文件并写入另一个文件
  • 纳税服务主要职责
  • 超市开发票每月额度,超了之后税率是多少
  • 购置税缴费方式
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设