Vue 常用修饰符

106 阅读2分钟

常用的修饰符一般分为 表单修饰符(v-model修饰符) 和事件修饰符。

表单修饰符

1. .lazy

输入框改变,这个数据就会改变, lazy修饰符在光标离开input框才会更新数据

<input type="text" v-model.lazy="value">

2. .trim

过滤输入框首尾的空格

<input type="text" v-model.trim="value">

3. .number

先输入数字的话,只取前面数字部分。先输入字母的话,number修饰符无效

<input type="text" v-model.number="value">

事件修饰符

1. .stop

阻止事件冒泡。相当于调用了event.stopPropagation()方法

<button @click.stop ="test">test</button>

2. .prevent

阻止默认行为,相当于调用了event.preventDefault()方法,比如表单的提交、a标签的跳转就是默认事件

<a @click.prevent="test">test</a>

3. .self

只有元素本身触发时才触发方法。比如一个div里面有个按钮,div和按钮都有事件,我们点击按钮,div绑定的方法也会触发,如果div的click加上self,只有点击到div的时候才会触发

<div @click.self="test"></div>

4. .once

事件只能用一次,无论点击几次,执行一次之后都不会再执行(还是会事件冒泡)

<div @click.once="test"></div>

5. .native

.native事件修饰符是用来是在父组件中给子组件绑定一个原生的事件,就将子组件变成了普通的HTML标签看待。所以如果添加@click监听不了,就再补充一个.native

6. .capture

capture的作用添加事件侦听器时使用事件捕获模式。即是给元素添加一个监听器,当元素发生冒泡时,先触发带有该修饰符的元素。若有多个该修饰符,则由外而内触发

7. .sync

实现父子组件数据之间的双向绑定,与v-moel类似。

8. .keyCode

主要用于使用按键触发事件。在项目中用的最多的就是回车触发搜索功能