位置: IT常识 - 正文

给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单)

编辑:rootadmin
给饿了么Radio 单选框添加点击事件(vue2) 前言

推荐整理分享给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:饿了么单聊,饿了么指定单,饿了么怎么设置单量,饿了么接单提示音怎么设置,饿了么接单提示音怎么设置,饿了么指定单,饿了么单聊,饿了么单聊,内容如对您有帮助,希望把文章链接给更多的朋友!

最近有一个这样的需求,当点击不合格时打开一个弹窗进行不合格数据的录入。问题点在于当你想对不合格数据进行修改时,点击不合格是没有反应的;因为Radio 单选框只提供了一个change 事件

解决

这里说明一下,项目是vue2的项目,写这个demo是vue3的项目。但是两者的情况有些不一样。

问题1

vue2

<el-radio-group v-model="result"> <el-radio :label="0" @click.native="radioClick">不合格</el-radio> <el-radio :label="1">合格</el-radio></el-radio-group>

vue3

<el-radio-group v-model="result"> <el-radio :label="0" @click="radioClick">不合格</el-radio> <el-radio :label="1">合格</el-radio></el-radio-group>

在这里也发现了我的一个误解,@click 本质是一个自定义事件,只是与原生的点击事件功能上是一致的。 在vue2中有这样一句话 所以在vue2中直接@click是不生效的,因为Radio 单选框没有提供这样的事件;但是加上.native修饰符后这就是原生事件了,因此点击事件会生效。

在vue3中直接使用@click生效是因为vue3中移除了.native修饰符,@click默认就是原生的点击事件

问题2给饿了么Radio 单选框添加点击事件(vue2)(饿了么指定单)

点击事件解决了,但是该事件每次都会被触发两次。原因是因为el-radio被封装了好几层,根元素不是input,解决是在后面添加prevent

//vue2 <el-radio :label="0" @click.native.prevent="radioClick">不合格</el-radio> //vue3 <el-radio :label="0" @click.prevent="radioClick">不合格</el-radio>

至于为什么使用prevent可以解决这个问题,暂时没有找到原因

问题3

点击问题解决了,触发两次解决了,但是加上prevent后,单选框是无法被选中的。 解决:手动进行赋值

const radioClick = () => { result.value = 0; console.log('点击了', result.value);};

最终方案

看上面的动图其实可以看到还是有点小问题的,手动赋值后选中状态多了一圈,要在旁边空白地方点击一下才能变成正常的选中状态。如果不介意的话,这样就可以了,比较很简单。

还有一种解决方案,指令(yyds)

vue2

directives: { radioClick: { bind(el,binding) { // console.log(el); console.log(el.getElementsByClassName('el-radio__original')[0].getAttribute('value')); if(el.getElementsByClassName('el-radio__original')[0].getAttribute('value') == 2) { el.getElementsByClassName('el-radio__original')[0].addEventListener('click',() => { console.log('点击了',binding.value); }); } } } },

vue3

const vRadioClick = { mounted: (el, binding) => { if (el.getElementsByClassName('el-radio__original')[0].getAttribute('value') == 0) { el.getElementsByClassName('el-radio__original')[0].addEventListener('click', () => { console.log('点击了', binding.value); }); } }};

补充

本来以为上面就解决了,原来小丑竟然是自己。在指令中是无法获取到this 的,查了下需要借助指令的第三个参数

vnode.context 就是我们需要的 this

本文链接地址:https://www.jiuchutong.com/zhishi/296043.html 转载请保留说明!

上一篇:ieee下载文献的方法(ieee下载论文)

下一篇:【微信小程序】WXSS和全局、页面配置(微信小程序制作)

  • 如何在微博上做好产品口碑?(如何在微博上做问卷调查)

    如何在微博上做好产品口碑?(如何在微博上做问卷调查)

  • iphone下载的音乐文件在哪(iphone下载的音乐文件)

    iphone下载的音乐文件在哪(iphone下载的音乐文件)

  • 小米mix3小窗口模式在哪设置(小米mix3小窗口一直固定在屏幕)

    小米mix3小窗口模式在哪设置(小米mix3小窗口一直固定在屏幕)

  • 手机qq如何设置自动回复(手机qq如何设置空间权限)

    手机qq如何设置自动回复(手机qq如何设置空间权限)

  • 淘宝退款关闭的意思(淘宝退款关闭的记录怎么删除)

    淘宝退款关闭的意思(淘宝退款关闭的记录怎么删除)

  • 重新登录前部分账户服务将不可用(重新登录前部分账户服务不可用)

    重新登录前部分账户服务将不可用(重新登录前部分账户服务不可用)

  • 抖音集字没有发(抖音发字集齐图片)

    抖音集字没有发(抖音发字集齐图片)

  • qq有什么隐藏功能(qq有什么隐藏功能 视频)

    qq有什么隐藏功能(qq有什么隐藏功能 视频)

  • gtx1660ti和rtx2060性能差多少

    gtx1660ti和rtx2060性能差多少

  • qq聊天记录能保存多久(qq聊天记录能保存多少条)

    qq聊天记录能保存多久(qq聊天记录能保存多少条)

  • 网络层的协议有哪些(属于网络层的协议有)

    网络层的协议有哪些(属于网络层的协议有)

  • vsco是什么(vsco是什么风格)

    vsco是什么(vsco是什么风格)

  • ipad可以用腾讯会议吗(iPad可以用腾讯会议的屏幕共享嘛)

    ipad可以用腾讯会议吗(iPad可以用腾讯会议的屏幕共享嘛)

  • 小爱音箱每天用电多少(小爱音箱每天耗电有多少)

    小爱音箱每天用电多少(小爱音箱每天耗电有多少)

  • word怎么把竖排弄成横排(怎样把字体变成竖排)

    word怎么把竖排弄成横排(怎样把字体变成竖排)

  • vivoz5后盖什么材质(vivo z5后盖材质)

    vivoz5后盖什么材质(vivo z5后盖材质)

  • 小米8夜光屏怎么开(小米8夜光屏怎么打开)

    小米8夜光屏怎么开(小米8夜光屏怎么打开)

  • 计算机辅存储器包括(计算机常用的辅存储器有____ 、____ 、____)

    计算机辅存储器包括(计算机常用的辅存储器有____ 、____ 、____)

  • 计算机资源主要是指(计算机资源主要指)

    计算机资源主要是指(计算机资源主要指)

  • 取消行号显示在哪里设置(行号如何取消)

    取消行号显示在哪里设置(行号如何取消)

  • 抖音视频保存失败(抖音视频保存失败视频去哪里了)

    抖音视频保存失败(抖音视频保存失败视频去哪里了)

  • 拼多多满返的钱在哪里(拼多多满返的钱怎么提现)

    拼多多满返的钱在哪里(拼多多满返的钱怎么提现)

  • Layui的基本使用(前端登录操作步骤)(layui 使用)

    Layui的基本使用(前端登录操作步骤)(layui 使用)

  • 织梦数据库实现调用顶级二级栏目及下三级栏目方法(织梦数据库在哪)

    织梦数据库实现调用顶级二级栏目及下三级栏目方法(织梦数据库在哪)

  • 企业所得税的代码是什么
  • 混合销售行为的基本特征不包括
  • 产品样品送样流程
  • 租出非专利技术的摊销额会导致营业利润减少吗
  • 小规模纳税人消费税怎么计算
  • 一般纳税人制作除尘器的制作费开票税率是多少
  • 运费开进发票
  • 12月份的收入1月份开具发票,报税时免税吗
  • 收到子公司非货币资产分配账务处理
  • 自然人能申请破产吗?
  • 公司造成损失要员工承担吗
  • 润滑油经销需要什么资质
  • 营改增后房地产企业增值税如何核算
  • 营改增后增值税税率的调整
  • 原料采购入库检测损耗的会计处理怎么做?
  • 增值税发票已认证抵扣还可以进项税额转出吗
  • 培训机构的收入有哪几方面
  • 红字发票怎么填申报表表二
  • 电子税务局发送短信异常是怎么回事
  • linux中压缩
  • 如何进行网络测试网速测试
  • 负债融资的特点是什么
  • 不得抵扣的进项税额计入哪里
  • 现金日记账和银行存款日记账登记
  • 软件服务费怎么算
  • 修改apache的http服务端口为8080
  • 苹果14发布会时间
  • 票据行为包括哪4点
  • 一个php请求的执行过程
  • 清算期间会计分录
  • 企业所得税季度申报表营业收入怎么填写
  • Access-Control-Expose-Headers 响应报头、跨域 公开响应头
  • php如何实现
  • php二维数组按某个键值排序
  • 用流程图的形式写出视觉的形成过程
  • 2023年会出什么车
  • 雪花算法时钟回拨
  • 预提费用多提汇算清缴怎么做账
  • 报税系统清卡成功状态
  • 进项转出分录处理
  • 工资和社保基数不一致
  • 印花税应计入哪些费用
  • 赠送顾客的商品怎么入账
  • 公益性怎么解释
  • linux mint 下mysql中文支持问题
  • python如何实现事务机制
  • 个人代扣代缴社保分录
  • 销售价格确定的方法有
  • 个人所得税专项附加扣除赡养老人
  • 所得税 补税
  • mariadb10安装
  • 怎么才能获得音乐
  • 工会经费的会计分录2022
  • 其他应收款收不回来怎么写情况说明
  • 挂靠人员社保缴费分录如何做?
  • 已认证的发票怎么做账
  • 单位给个人转款怎么做账
  • 对公账户给私人账户转账,几天到账
  • 税控设备设置在哪儿
  • 无法在你的位置安装windows
  • win2003加速开机
  • windows安装kafka
  • xp桌面字体有阴影怎么去掉
  • ubuntu undate-rc.d 的一些使用介绍
  • ubuntu系统安装nvidia显卡驱动
  • 怎么给电脑装win8系统
  • winxp回收站清空了怎么恢复
  • 电脑系统 win7
  • win10mobile更新出错
  • cocos creator内存性能优化
  • jquery.handleerror
  • shell脚本编写 方法
  • monkey命令大全
  • js数组添加元素的方法
  • jquery操作
  • 实用js代码
  • 税务申报系统如何改成密码登录
  • 票折与票扣的区别在哪里
  • 扬州 税务
  • 什么是增值税税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设