• 2021年4月22日


    时间:1个小时左右

    代码:200行左右

    博客:1

    知识点:vue的事件修饰符,按键修饰符,自定义按键修饰符别名等

    1.事件修饰符

    在事件处理程序中调用 event.preventDefault() 或 event.stopPropagation() 是非常常见的需求。

    Vue 不推荐我们操作DOM 为了解决这个问题,Vue.js 为 v-on 提供了事件修饰符

    修饰符是由点开头的指令后缀来表示的

    <!-- 阻止单击事件继续传播 -->
    <a v-on:click.stop="doThis"></a>
    <!-- 提交事件不再重载页面 -->
    <form v-on:submit.prevent="onSubmit"></form>
    <!-- 修饰符可以串联 即阻止冒泡也阻止默认事件 -->
    <a v-on:click.stop.prevent="doThat"></a>
    <!-- 只当在 event.target 是当前元素自身时触发处理函数 -->
    <!-- 即事件不是从内部元素触发的 -->
    <div v-on:click.self="doThat">...</div>
    使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用 v-on:click.prevent.self 会阻止所有的点 击,而 v-on:click.self.prevent 只会阻止对元素自身的点击。

    2.按键修饰符 :

    在做项目中有时会用到键盘事件,在监听键盘事件时,我们经常需要检查详细的按键。Vue 允许为 v-on 在监 听键盘事件时添加按键修饰符

    <!-- 只有在 `keyCode` 是 13 时调用 `vm.submit()` -->
    <input v-on:keyup.13="submit">
    <!-- -当点击enter 时调用 `vm.submit()` -->
    <input v-on:keyup.enter="submit">
    <!--当点击enter或者space时 时调用 `vm.alertMe()` -->
    <input type="text" v-on:keyup.enter.space="alertMe" >
    常用的按键修饰符
    .enter => enter键
    .tab => tab键
    .delete (捕获“删除”和“退格”按键) => 删除键
    .esc => 取消键
    .space => 空格键
    .up => 上
    .down => 下
    .left => 左
    .right =><script>
    var vm = new Vue({
    el:"#app",
    methods: {
    submit:function(){},
    alertMe:function(){},
    }
    })
    </script>

    3.自定义按键修饰符别名

    在Vue中可以通过 config.keyCodes 自定义按键修饰符别名

    <div id="app">
    预先定义了keycode 116(即F5)的别名为f5,因此在文字输入框中按下F5,会触发prompt方法
    <input type="text" v-on:keydown.f5="prompt()">
    </div>
    <script>
    Vue.config.keyCodes.f5 = 116;
    使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用 v-on:click.prevent.self 会阻止所有的点
    击,而 v-on:click.self.prevent 只会阻止对元素自身的点击。
    let app = new Vue({
    el: '#app',
    methods: {
    prompt: function() {
    alert('我是 F5!');
    }
    }
    });
    </script>

    4.v-bind

    v-bind 指令被用来响应地更新 HTML 属性 v-bind:href 可以缩写为 :href;

    <!-- 绑定一个属性 -->
    <img v-bind:src="imageSrc">
    <!-- 缩写 -->
    <img :src="imageSrc">
  • 相关阅读:
    海选女主角
    发工资咯:)
    绝对值排序
    数列有序!
    母牛的故事
    一文看懂外汇风险准备金率调整为 20%的含义
    1080i减少带宽
    为什么要采用隔行扫描?
    720P、1080P、4K是什么意思?
    VBR一次編碼 v.s 二次編碼(VBR 1-pass vs 2-pass)
  • 原文地址:https://www.cnblogs.com/j-y-s/p/14903291.html
Copyright © 2020-2023  润新知