DB_鸠 2022-04-21 14:09 采纳率: 87.5%
浏览 185
已结题

为什么一刷新页面就会执行点击事件

问题相关代码,请勿粘贴截图

 <li v-for="(item,index) in each" v-on={click:add(index),click:over}>{{item.value}}</li>



运行结果及报错内容

@语法糖绑定一个事件不会发生这个问题,绑定两个时会一直自动执行

我想要达到的结果

希望可以点击后再让代码执行

  • 写回答

3条回答 默认 最新

  • eno_zeng 2022-04-21 16:49
    关注

    v-on="{click:add(index)}"这样子传入的 click 是 add 函数的执行结果,使用 @click="add(index)" 之所以没有立即执行 add 函数是因为 vue 做了处理,将你的add(index)封装成了一个函数再点击时再执行,而 v-on 接受的是对象,这个对象计算是就会执行 add 函数并把函数的执行结果赋值给 click 字段,这是不一样的,你可以这样写 v-on="{click: () => add(index)}"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月30日
  • 已采纳回答 4月22日
  • 创建了问题 4月21日

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题