Vue中的事件处理

本文介绍了Vue中如何使用v-on或@绑定事件,并在methods中定义回调函数处理事件。强调了methods中不应使用箭头函数以保持正确的this指向。示例展示了如何通过事件触发弹窗提示,以及如何传递参数和利用$event获取元素属性。对于参数的灵活传递,可以通过事件传递多个参数或使用数据对象来实现。
摘要由CSDN通过智能技术生成

Vue中的事件处理

知识点:
  1. 使用v-on:xxx或者@xxx绑定事件,其中xxx是事件名;
  2. 事件的回调需要配置在methods对象中,最终会在vm上;
  3. methods中配置的函数,不要用箭头函数!否则this就不是vue实例了;
  4. methods中配置的函数,都是被Vue所管理的函数,this的指向是vm或者是组件实例对象;
  5. @click='demo'@click='demo($event)' 效果一致,但是后者可以传递参数,还可以通过event(点击或者别的什么事件)去拿到按钮或者别的元素的属性;
需求:写一个按钮去绑定事件实现在点击后弹窗。
<body>
    <div id="root">
        <h2>欢迎来到{{name}}学习</h2>
        <button v-on:click="showInfo1">点我提示1</button>
        <button @click="showInfo2(66,$event)">点我提示2(简写)</button>
    </div>

    <script type="text/javascript">
        const vm = new Vue({
            el: "#root",
            data() {
                return {
                    name: "郑州大学"
                }
            },
            methods: {
                showInfo1(event) {
                    //可以拿到事件,从而拿到这个按钮的属性等等
                    console.log(event.target.innerText)
                    alert("同学你好!")
                },
                showInfo2(number, event2) {
                    //可以拿到事件,从而拿到这个按钮的属性等等
                    console.log(event2.target.innerText)
                    alert("同学你好!!" + number)
                },
            }
        })
    </script>

</body>

ps:疑惑?通过这种方式那么怎么灵活的传递参数而不是直接写死。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YonChao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值