v-on指令是事件绑定指令,当用户需要点击,按下键盘,滚动鼠标等操作时,想要添加一些自己的逻辑处理时,就可以为特定的元素绑定一些特定的事件。
我们先在被vue实例挂载的标签div中,放入一个按钮为input标签,在标签内部写入v-on指令,冒号(:)后面就是事件名,等号(=)后面就是需要绑定的事件名称。
1.v-on怎么使用?
<div id="app">
<input type="button" value="事件绑定" v-on:事件名="方法名">
</div>
2.事件名到底写什么呢?
假设如果是点击事件就写click,如果是鼠标移入事件就写monseenter,如果是鼠标双击事件就写 dblclick
<div id="app">
<input type="button" value="事件绑定" v-on:click="方法名">
<input type="button" value="事件绑定" v-on:mouseenter="方法名">
<input type="button" value="事件绑定" v-on:dblclick="方法名">
</div>
3.方法名在哪里定义呢?
方法我们写在methods里面
<body>
<div id="app">
<input type="button" value="事件绑定" v-on:click="todo">
<input type="button" value="事件绑定" v-on:mouseenter="todo">
<input type="button" value="事件绑定" v-on:dblclick="todo">
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
var app = new Vue({
el:"#app",
methods:{
todo:function() {
//方法执行的逻辑
}
}
})
</script>
</body>
4.v-on的简写
从代码中,我们可以发现,在绑定的事件都是v-on开头,Vue其实提供了一个简洁的写法,用@符号替代v-on
<div id="app">
<input type="button" value="事件绑定" @click="todo">
<input type="button" value="事件绑定" @mouseenter="todo">
<input type="button" value="事件绑定" @dblclick="todo">
</div>
5. 访问data中的数据,通过this关键字
6.总结
- v-on指令作用是为元素绑定事件
- v-on指令可以简写为@
- 绑定的方法在methods中
- 方法内部通过this关键字访问定义在data中的数据