美文网首页
vue学习(9)事件处理

vue学习(9)事件处理

作者: 哆啦C梦的百宝箱 | 来源:发表于2022-02-18 08:49 被阅读0次
    <!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)"效果一致,只是后者可以传参。

    相关文章

      网友评论

          本文标题:vue学习(9)事件处理

          本文链接:https://www.haomeiwen.com/subject/arwjlrtx.html