Vue组件使用v-on绑定自定义事件:
可以分为3步理解:
1.在组件模板中按照正常事件机制绑定事件:
template: ‘<button v-on:click="increment">{{ counter }}</button>‘,
如上,v-on:click就是用来给子组件绑定点击事件的,这就是原生的自带的事件,容易理解。
2.子组件的事件发生时,在事件函数中向父组件“报告”这一事件(使用$emit):
methods: {
increment: function () {
this.counter += 1;
this.$emit(‘increment‘);
}
},
上面事件函数中的代码this.$emit(‘increment‘)的意思就是向父组件报告,自己发生了‘increment’事件。至于发生的事件叫什么名字,可以随意取名,只要在父组件中绑定时名称一致即可。
3.父组件在使用时,明确使用v-on绑定子组件传来的事件:
<button-counter v-on:increment="incrementTotal"></button-counter>
上方的v-on:increment就是绑定的子组件的increment事件。
常用语父组件中的数据变化与子组件的操作有关的情况。
Vue组件绑定自定义事件
时间: 2025-01-13 03:46:15
Vue组件绑定自定义事件的相关文章
【vue】vue组件的自定义事件
父组件: <template> <div> <my-child abcClick="sayHello"></my-child> </div> </template> <script> export default { method: { sayHello(Num,Str) { alert('hello world~~' + Num + Str) } } } </script> 子组件: &l
给组件绑定原生事件
子组件自定义触发事件 以及节点上添加的事件 子组件 将自定义事件添加修饰直接变成原生事件,进行监听 原文地址:https://www.cnblogs.com/lyplucky/p/10336233.html
Vue的双向绑定以及组件的自定义事件
什么是双向绑定 所谓的双向绑定是指数据发生变化时,视图会同步发生变化,而当视图发生变化时,数据也会同步变化. Vue中怎么实现双向绑定 在Vue中,我们通过v-model来创建双向绑定. 我们继续用todolist和todoitme组件来示例双向绑定 在App.vue的data中增加一个message. data(){ return{ message:"hello world", list: [ { title: "新课程1", del: false }, { ti
vue2.0中v-on绑定自定义事件的理解
vue中父组件通过prop传递数据给子组件,而想要将子组件的数据传递给父组件,则可以通过自定义事件的绑定. 每个Vue实例都实现了[事件接口],即: 1.使用 $on(eventName) 监听事件 2.使用 $emit(eventName) 触发事件 父组件可以在使用子组件的地方直接用 v-on 来监听子组件触发的事件. html代码: 1 <div id="counter-event-example"> 2 <p>{{ total }}</p>
4-4 给组件绑定原生事件
原来的方法: 监听这个child的原生事件,需要两层的传递: 新方法: 在组件child上面做事件的监听,监听的并不是自定义事件,而是一个原生的点击事件 只需要在组件的事件后面加一个native修饰符即可 //显示效果如下: //这种新方法,更加简单的直接调用了组件的事件绑定方法.不用去创建一个自定义事件来调用了. 原文地址:https://www.cnblogs.com/ytraister/p/10618222.html
Vue 样式绑定、事件绑定
v-bind:class=" " 绑定样式 <div id="app"> <!-- 值是对象形式,字段名是class样式名,值是boolean值,true是引用该样式,false不引用 --> <!-- 值是false,只是不引用该样式,并不是就不显示该元素了 --> <p v-bind:class="{red:true}">p1</p> <!-- 可使用其它的值,会自动转换
Android--自定义组件的自定义事件
Mybotton.java /*定义接口*/ public interface MyClick{ public void onMyClick(String str); } /*初始化接口变量*/ MyClick MyClick=null; /*自定义事件*/ public void setOnMyClickListener(MyClick MyClick){ this.MyClick= MyClick; } MainActivity.java XXX.setOnMyClickListener(n
vue组件中click事件失效
最近使用vue学习开发移动端的项目,使用了bette-scroll插件做滚动.在引入better-scroll的组件中使用@click事件的时候,点击事件失效,v-on:click.v-bind:click.@click.native都不行,试了一下@touchstart是却是可以的,发现better-scroll的配置中没有设置click:true,设置过之后click事件成功. 后来在使用vuex的时候一直报"[vuex] unknown mutation type: changeCity&
vue自定义事件 子组件把数据传出去
每个 Vue 实例都实现了事件接口(Events interface),即: 使用 $on(eventName) 监听事件 使用 $emit(eventName) 触发事件 1.使用v-on绑定自定义事件 1 <!DOCTYPE html> 2 <html> 3 <head lang="en"> 4 <meta charset="UTF-8"> 5 <title></title> 6 <s