美文网首页
6、Vue_事件处理器

6、Vue_事件处理器

作者: 猪儿打滚 | 来源:发表于2019-09-26 14:24 被阅读0次

事件监听:v-on

PS.v-on的简写语法是@

  • 1、一般情况下,会使用一个方法来调用JavaScript方法,然后使用v-on来接收这个定义的方法来调用
    比如之前说过的例子:
<template>
    <div>
        <p>{{msg}}</p>
        <!-- 监控click事件,有则触发reversemsg方法-->
        <button v-on:click="reversemsg">字符串反转</button>
    </div>
</template>

<script>
    export default {
        // 组件名字
        name: "v-on",
        // 数据
        data(){
            return {
                msg:"我要被反转"
            }
        },
        // 方法
        methods:{
            reversemsg() {
                // 反转要去掉字符串以及加上字符串
                this.msg = this.msg.split('').reverse().join('')
            }
        }
    }
</script>

<style scoped>

</style>
  • 2、也可以直接调用JavaScript语句
<template>
    <div>
        <!-- 缩写语法:@ -->
        <button @click="say('hi')">hi</button>
        <button v-on:click="say('vue')">vue</button>
    </div>

</template>

<script>
    export default {
        name: "one",
        methods:{
            say(msg){
                alert(msg)
            }
        }
    }
</script>

<style scoped>

</style>
  • 3、v-on还提供了事件修饰符来处理DOM事件,可以通过.表示的指令后缀来调用这些修饰符
    事件修饰符:
.stop - 调用 event.stopPropagation()。
.prevent - 调用 event.preventDefault()。
.capture - 添加事件侦听器时使用 capture 模式。
.self - 只当事件是从侦听器绑定的元素本身触发时才触发回调。
.{keyCode | keyAlias} - 只当事件是从特定键触发时才触发回调。
.native - 监听组件根元素的原生事件。
.once - 只触发一次回调。
.left - (2.2.0) 只当点击鼠标左键时触发。
.right - (2.2.0) 只当点击鼠标右键时触发。
.middle - (2.2.0) 只当点击鼠标中键时触发。
.passive - (2.3.0) 以 { passive: true } 模式添加侦听器
keydown:键盘按下(后面可跟修饰符)
keyup:键盘弹起(后面可跟修饰符)

例子:(来源菜鸟教程)

<!-- 阻止单击事件冒泡 -->
<a v-on:click.stop="doThis"></a>
<!-- 提交事件不再重载页面 -->
<form v-on:submit.prevent="onSubmit"></form>
<!-- 修饰符可以串联  -->
<a v-on:click.stop.prevent="doThat"></a>
<!-- 只有修饰符 -->
<form v-on:submit.prevent></form>
<!-- 添加事件侦听器时使用事件捕获模式 -->
<div v-on:click.capture="doThis">...</div>
<!-- 只当事件在该元素本身(而不是子元素)触发时触发回调 -->
<div v-on:click.self="doThat">...</div>

<!-- click 事件只能点击一次,2.1.4版本新增 -->
<a v-on:click.once="doThis"></a>
  • v-on在监听键盘事件时,可添加按键修饰符
<!-- 只有在 keyCode 是 13 时调用 vm.submit() -->
<input v-on:keyup.13="submit">

Vue为常用的按键进行了别名

<!-- 效果如上-->
<input v-on:keyup.enter="submit">
<!-- 缩写语法 -->
<input @keyup.enter="submit">

全部的按键别名:

.enter
.tab
.delete (捕获 "删除" 和 "退格" 键)
.esc
.space
.up
.down
.left
.right
.ctrl
.alt
.shift
.meta

相关文章

  • 6、Vue_事件处理器

    事件监听:v-on PS.v-on的简写语法是@ 1、一般情况下,会使用一个方法来调用JavaScript方法,然...

  • 响应事件

    添加事件处理器 在注册事件处理器时,函数名后面不能有括号。 删除事件处理器 要删除事件处理器,只需要简单地给它赋值...

  • redis IO多路复用线程模型

    (2)redis的线程模型 1)文件事件处理器 redis 基于reactor模式开发了网络事件处理器,这个处理器...

  • YARN 调度器框架

    资源调度器执行由事件触发 Yarn的调度器框架是个事件处理器,需要负责处理6种调度器相关的事件类型(Schedul...

  • SENDEVENT

    系统组件:事件服务器、事件处理器、远程代理 事件处理器请求(1)事件服务器后获取相关作业信息(2)并将之通过代理连...

  • redis 知识总结

    redis 线程模型 Redis 基于 Reactor 模式开发了自己的网络事件处理器: 这个处理器被称为文件事件...

  • Redis线程模型

    redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 re...

  • redis-1

    redis-1 redis的IO模型 4大核心组建 多路复用 套接字队列 事件分派器 事件处理器 (请求处理器、连...

  • redis线程模型

    redis 内部使用文件事件处理器 file event handler,这个文件事件处理器是单线程的,所以 re...

  • React-事件绑定

    一、bind方法 这个方法可以绑定事件处理器内的this,并可以向事件处理器中传递参数(自带的event是在参数的...

网友评论

      本文标题:6、Vue_事件处理器

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