vue的事件处理,$set的用法和表单元素处理修饰符

本文详细介绍了Vue中的事件处理,包括事件注册、传参、阻止冒泡、阻止默认事件和捕获事件。同时,讨论了$set在操作数组和对象时的用法,以及在处理表单元素时的各种修饰符的应用。
摘要由CSDN通过智能技术生成

目录

事件处理

事件注册

事件传参

event

阻止事件冒泡

阻止默认事件

捕获事件.capture

事件修饰符

按键修饰符

$set用法

set操作数组

$set操作对象

$set操作数组对象

表单元素处理

表单修饰符


事件处理


事件注册

事件注册:
                语法:
                    v-on:事件名称 = "事件函数/表达式"
                简写
                    @事件名称 = "事件函数/表达式"

 

 <!-- 1.引入vue -->
    <script src="./vue.js"></script>
</head>
<body>
    <!-- 2.创建dom元素 -->
    <div id="app">
        <!-- 
            事件注册:
                语法:
                    v-on:事件名称 = "事件函数/表达式"
                简写
                    @事件名称 = "事件函数/表达式"
         -->
         <button v-on:click="hander">点击</button>
         <hr>
         <button @click="hander">点击</button>


    </div>
    <script>
        let vm = new Vue({
            el:'#app',
            data:{//属性

            },
            methods:{//方法
                hander(){
                    console.log('被触发了');
                }
            }
        })
    </script>

事件传参

语法:
    @事件名称="事件函数(参数一,参数二,参数N)"

 

 <!-- 1.引入vue -->
    <script src="./vue.js"></script>
</head>
<body>
    <!-- 2.创建dom元素 -->
    <div id="app">
        <!-- 
            事件注册:
                语法:
                    v-on:事件名称 = "事件函数/表达式"
                简写
                    @事件名称 = "事件函数/表达式"
         -->
         <button v-on:click="hander">点击</button>
         <hr>
         <button @click="hander(666)">666</button>
         <button @click="hander(10*20)">乘法</button>
         <button @click="hander(10+20)">加法</button>


    </div>
    <script>
        let vm = new Vue({
            el:'#app',
            data:{//属性

            },
            methods:{//方法
                hander(num){
                    console.log(num);
                }
            }
        })
    </script>

event

两种方法:
    隐士获取:
    显示获取:

 

 <!-- 1.引入vue -->
    <script src="./vue.js"></script>
</head>
<body>
    <!-- 2.创建dom元素 -->
    <div id="app">
        <!-- 显示获取event对象:传递固定参数$event -->
        <button @click="getEvent(10,$event,20)">获取event事件对象</button>
        <hr>
        <!-- 隐士获取event对象:传递参数$event可以省略 -->
        <button @click="getEvent1(666,777)">获取event事件对象</button>

    </div>
    <script>
        let vm = new Vue({
            el:'#app',
            data:{//属性

            },
            methods:{//方法
                getEvent(e,num1,num2){
                    console.log(e);
                    console.log(num1,num2);
                },
                getEvent1(e,num1,num2){
                    console.log(e);
                    console.log(num1,num2);
                }
            }
        })
    </script>

阻止事件冒泡

方式一:
    e.stopPropagation()
方式二:
.stop:事件修饰符
    @事件名称.stop="事件函数";

 <!-- 1.引入vue -->
    <script src="./vue.js"></script>
    <style>
        .outer{
            width:200px;
            height: 200px;
            background-color: pink;
        }
        .inner{
            width:100px;
            height: 100px;
            background-color: blue;
        }
    </style>
</head>
<body>
    <!-- 2.创建dom元素 -->
    <div id="app">
        <div class="outer" @click="outer">
            <!-- .stop  事件修饰符 -->
            <div class="inner" @click.stop="inner"></div>
        </div>
    </div>
    <script>
        let vm = new Vue({
            el:'#app',
            data:{//属性

            },
            methods:{//方法
                outer(){
                    console.log('outer');
                },
                inner(e){
                    // 阻止事件冒泡
                    // e.stopPropagation()
                    console.log('inner');
                }
            }
        })
    </script>

阻止默认事件

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值