Vue修饰符

2021-07-02  本文已影响0人  mcgee0731

事件修饰符

prevent修饰符

<div id="app">
  <a @click.prevent="fn" href="https://kaiwu.lagou.com/">链接</a> // 可以添加fn方法也可以不加
  <a @click.prevent href="https://kaiwu.lagou.com/">链接</a>
</div>

stop修饰符

点击按钮时,div的点击事件也会触发

正确写法

<div @click="fn1">
  <button @click.stop="fn2">按钮</button>
</div>

修饰符的结合使用

<div @click="fn1">
  <a @click.prevent.stop="fn2" href="xxx">链接</a>
</div>

once修饰符

<div id="app">
  <button @click.once="fn2">按钮</button>
</div>

passive修饰符


self修饰符

<div v-on:click.self="doThat">...</div>

更多事件修饰符来自官网


按键修饰符

<div id="app">
  <input type="text" @keyup="fn"> // 指定按键松开会触发
</div>
var vm = new Vue({
  data:{
  },
  methods:{
    fn(event){
      console.log(event) // 内有code,key,keycode(被废弃)
    }
  }
}).$mount("#app")

添加按键码修饰符

<div id="app">
  <input type="text" @keyup.49="fn"> // 只有keycode49可以触发
</div>

如果按键是字母,可以修改为字母修饰符

<div id="app">
  <input type="text" @keyup.a="fn"> // 只有a字母可以触发
</div>
<div id="app">
  <input type="text" @keyup.esc="fn"> // 只有 esc 可以触发
</div>
<div id="app">
  <input type="text" @keyup.a.b.c="fn"> // a 或者 b 或者 c 都可以触发
</div>

更多按键修饰符来自官网


系统修饰符

<div id="app">
  <input type="text" @keyup.ctrl="fn"> // 点击 ctrl+c
</div>
<div id="app">
  <input type="text" @keyup.ctrl.q ="fn"> // 只有 ctrl+q 才能触发
</div>

鼠标按键修饰符

<div id="app">
  <input type="text" @keyup.left ="fn"> // 左键 才能触发
</div>

v-model修饰符

trim修饰符

<div id="app">
  <input type="text" v-model.trim="inputVal"> // input中首尾空格会被trim移除
  <p>{{ inputVal }}</p>
</div>

lazy修饰符

<div id="app">
  <input type="text" v-model.lazy="inputVal"> // input只有失去焦点才会更新
  <p>{{ inputVal }}</p>
</div>

number修饰符

欢迎赞赏和关注!!

上一篇 下一篇

猜你喜欢

热点阅读