vue中@click绑定事件点击不生效的解决
目录
- @click绑定事件点击不生效
- 原因
- 解决方法
- @click中不能使用三则表达式原因
@click绑定事件点击不生效
原因
根据Vue2.0官方文档关于父子组件通讯的原则,父组件通过prop传递数据给子组件,子组件触发事件给父组件。但父组件想在子组件上监听自己的click的话,需要加上native修饰符。
解决方法
方法1:在@click后加上.native(监听根元素的原生事件,使用 .native 修饰符)
@click.native = "..."
方法2:向外发送click事件
在 methods 内添加 _click 方法:
methods: { _click: function () { this.$emit('click', function () { //... }) } }
@click中不能使用三则表达式原因
@click="urgentchargeTime?urgentTime:''" //这么写的话会让vue执行的时候去data里面查找,但是我们是要用的函数
修改为:
@click="urgentchargeTime?urgentTime():''" //vue通过第一个数去data里面找,然后通过data里面的值进行去查找函数对象里面的函数
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
vue @click与@click.native,及vue事件机制的使用分析
目录 @click与@click.native及vue事件机制 点击事件@click 失效 @click与@click.native及vue事件机制 vue维护了自己的事件机制. 所以就有了原生DOM事件和自定义事件的区别,比如下面这段官网原话. 用在普通元素上时,只能监听原生 DOM 事件.用在自定义元素组件上时,也可以监听子组件触发的自定义事件. 本文也将围绕这一句话展开. 想必大家都会在自定义组件中自定义事件. <my-component v-on:my-event="doSomet
-
vue button的@click方法无效钩子函数没有执行问题
目录 Vue项目中使用button绑定click事件 事件无法触发methods中的方法解决办法 跨域问题 userData is not defined Vue的第四个bug 钩子函数(mounted/created) Vue的第五个bug vue @click失效问题 贴代码(直接截图) 解决方法 Vue项目中使用button绑定click事件 事件无法触发methods中的方法解决办法 事故还原 小胖做完公司的项目,老大看着小胖疲惫的脸庞,有点心疼小胖,就给小胖放了三天假,没有给小胖新的需
-
vue中的@click.native 原生点击事件
目录 @click.native原生点击事件 给vue组件绑定事件时候 等同于在自组件中 vue点击事件补充.native 步骤 官网的解释 @click.native原生点击事件 给vue组件绑定事件时候 必须加上native ,不然不会生效(监听根元素的原生事件,使用 .native 修饰符) 等同于在自组件中 子组件内部处理click事件然后向外发送click事件:$emit("click".fn) vue点击事件补充.native 发现vue中加载Element 之后 键盘事件
-
vue函数@click.prevent的使用解析
目录 @click.prevent的使用 @click.prevent的作用是什么? @click.stop与@click.prevent @click.stop @click.prevent @click.prevent的使用 背景 :vue项目操作中遇到@click.prevent函数,场景特殊(项目中有一个自己封装的组件库,因此所有的样式都统一集成,遇到特殊情况想引入特殊UI风格处理时,部分组件需要样式重调,因此用到@click.prevent)特此纪要. @click.prevent的作
-
vue中@click和@click.native.prevent的区别
目录 @click和@click.native.prevent区别 @click.native中.native的含义与使用 @click和@click.native.prevent区别 @click是用在按钮上的语法糖 而@click.native是给vue组件绑定事件时候,必须加上native ,否则会认为监听的是来自Item组件自定义的事件 prevent是用来阻止默认的事件.就相当于…event.preventDefault(),父组件想在子组件上监听自己的click的话,需要加上nati
-
vue中@click绑定事件点击不生效的解决
目录 @click绑定事件点击不生效 原因 解决方法 @click中不能使用三则表达式原因 @click绑定事件点击不生效 原因 根据Vue2.0官方文档关于父子组件通讯的原则,父组件通过prop传递数据给子组件,子组件触发事件给父组件.但父组件想在子组件上监听自己的click的话,需要加上native修饰符. 解决方法 方法1:在@click后加上.native(监听根元素的原生事件,使用 .native 修饰符) @click.native = "..." 方法2:向外发送clic
-
浅谈vue中组件绑定事件时是否加.native
组件绑定事件时 1. 普通组件绑定事件不能添加.native, 添加后事件失效 2. 自定义组件绑定事件需要添加.native, 否则事件无效 <template> <!-- <mt-field label="用户名" placeholder="请输入用户名"></mt-field> --> <input type="text" @keyup.native="show($event)
-
对vue中v-on绑定自定事件的实例讲解
关于官网vue中v-on绑定自定义事件的个人理解 对官网实例进行了一些修改,如下图: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>v-on绑定自定义事件</title> <script src="vue.js"></script> </head>
-
详解vue中在父组件点击按钮触发子组件的事件
我把这个实例分为几个步骤解读: 1.父组件的button元素绑定click事件,该事件指向notify方法 2.给子组件注册一个ref="child" 3.父组件的notify的方法在处理时,使用了$refs.child把事件传递给子组件的parentMsg方法,同时携带着父组件中的参数msg 4.子组件接收到父组件的事件后,调用了parentMsg方法,把接收到的msg放到message数组中 父组件 <template> <div id="app&qu
-
vue项目input标签checkbox,change和click绑定事件的区别说明
目录 input标签checkbox,change和click绑定事件的区别 input标签中checkbox类型的相关操作总结 一.checked属性 二.操作 三.关于checkbox的其他操作 input标签checkbox,change和click绑定事件的区别 我们经常在vue开发项目的过程中,遇到需要对input框使用v-modal的这种情况,在有的时候,不光需要双向数据绑定,还需要在改变数据之后绑定其它的操作,那么问题来了,你是使用@change绑定事件还是使用@click绑定事件
-
解决VUE框架 导致绑定事件的阻止冒泡失效问题
前面遇到了一个问题就是VUE框架内部做了一些处理,使得在我们通过v-for渲染DOM的时候添加新元素的时候,绑定事件也能对新增的元素有效. 而这次遇到的问题则是,原本绑定事件中(该函数没有写在vue实例的methods中),导致阻止冒泡事件失效了.无论是return false 还是event.stopPropagation();都无效. 此时需要通过用VUE提供了事件修饰符来处理,比如阻止事件冒泡@click.stop='xx()' .stop .prevent .capture .self
-
解决jquery appaend元素中id绑定事件失效的问题
1. 在jquery中append元素,如果该元素中有id值并且绑定事件,那么该id事件会失效,必须刷新一下才能使用. 2.解决办法: 举例:如果在一个<div class="title"></div>中,通过append添加一个id="demo"的按钮,常用的直接$("Selector").on("eventType",function(){})监听事件函数不起作用,例如该按钮的点击监听事件应该这样写
-
jQuery中on绑定事件后引发的事件冒泡问题如何解决
用on绑定时,我把子元素的 绑定到 document,而把父元素绑定到上级元素,导致 return false 阻止冒泡无效. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999
-
vue中v-for循环选中点击的元素并对该元素添加样式操作
相信大家都会遇到这种情况:v-for循环时,我只需要点击到的元素做出相应反应,其他的元素不变:但是往往所有v-for循环出的元素都会变化.如下面的代码:我需要点击到的元素添加一个类样式,其他元素不变,但是这样会导致所有的元素都会变化 html: <div v-for = "(item,index) in items" :class = 'addclass:isactive' @click='onclick()'> <span>{{item.name}}</
-
vue中el-input绑定键盘按键(按键修饰符)
vue怎么写键盘事件 vue允许将按键值作为修饰符来使用,如监听回车事件,有两种写法,如下代码: <input type="text" @keyup.13="console.log($event)"></input> <input type="text" @keyup.enter="console.log($event)"></input> 但要注意的是:当我们在在el-inpu
随机推荐
- 15个常用的javaScript正则表达式(收藏)
- C++中的string类的用法小结
- js控制的遮罩层实例介绍
- springMVC实现前台带进度条文件上传的示例代码
- ORACLE应用经验(1)
- 详解Django中Request对象的相关用法
- C#排序算法之快速排序
- smarty模板引擎之内建函数用法
- 函数指针的强制类型转换实现代码
- BootStrap智能表单demo示例详解
- ASP.NET MVC传送参数至服务端详解及实例
- 使用Mixin设计模式进行Python编程的方法讲解
- JavaScript函数模式详解
- Apache实现禁止中文浏览器访问与301重定向的方法
- Shell脚本对文件中的行、单词、字符进行迭代输出示例
- 未公开的SQL Server口令的加密函数
- 用jQuery打造TabPanel效果代码
- Jquery焦点图实例代码
- Java多线程回调方法实例解析
- 学习python分支结构