vue学习(9)事件处理

简介: vue学习(9)事件处理
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>事件处理</title>
</head>

<body>
    <div id="root">
        <h2>欢迎来学习{
   {
   name}}</h2>
        <button v-on:click="showInfo">点我提示信息(不传参)</button>
        <button @click="showInfo2(66,$event)">点我提示信息1(传参)</button>
    </div>
    <script src="../js/vue.js"></script>
    <script type="text/javascript">
        Vue.config.productionTip = false;
        new Vue({
   
            el: '#root',
            data: {
   
                name: 'vue'
            },
            methods: {
   
                showInfo(event) {
   
                    console.log(event.target.innerText);
                    console.log(this);//此处的this指vue实例。
                    alert('同学你好');
                },
                showInfo2(number,event){
   
                    console.log(number,event);
                }
            }
        })
    </script>
</body>

</html>

知识点
1:事件默认接收一个参数,事件对象Event, 常用到的属性target,拿到事件目标,就是绑定事件的那个dom元素。
2:vue模板只能用vue实例里面的东西。比如把方法写到全局,仍然会检测说没有定义。
3:事件的基本使用
(1):使用v-on:xxx或者@xxx绑定事件,xxx是事件名称。
(2):事件的回调需要配置到methods,最终会在vm实例上。
(3):methods中配置的函数,不要使用箭头函数!,否则this指向的就不是vm实例。
(4):methods中配置的函数,都是vm被所管理的函数,this的指向是vm或组件实例对象。
(5):@click="demo"和@click="demo($event)"效果一致,只是后者可以传参。

目录
相关文章
|
3天前
|
JavaScript 前端开发
Vue项目使用px2rem
Vue项目使用px2rem
|
4天前
|
缓存 JavaScript
vue学习(12)计算属性
vue学习(12)计算属性
15 3
|
4天前
|
缓存 JavaScript
vue学习(12)计算属性
vue学习(12)计算属性
15 2
|
3天前
|
JavaScript
Vue组件传值异步问题--子组件拿到数据较慢
Vue组件传值异步问题--子组件拿到数据较慢
8 0
|
3天前
|
缓存 JavaScript
Vue中的keep-alive是什么意思?以及如何使用
Vue中的keep-alive是什么意思?以及如何使用
|
7天前
|
JavaScript
vue学习(3)模板语法
vue学习(3)模板语法
38 11
|
7天前
|
存储 JavaScript 前端开发
vue学习(2)
vue学习(2)
195 65
|
7天前
|
JavaScript 算法 前端开发
vue学习(1)
vue学习(1)
195 62
|
6天前
|
JavaScript
vue学习(4)数据绑定
vue学习(4)数据绑定
19 10
|
6天前
|
JavaScript 前端开发
vue学习(6)
vue学习(6)
23 9