Vue学习笔记之事件处理

上一篇:Vue学习笔记之列表渲染

事件监听

可以用v-on指令监听DOM事件,但是大部分事件都比较复杂,因此,v-on 还可以接收一个需要调用的方法名称。

var example2 = new Vue({ el: '#example-2', data: { name: 'Vue.js' }, // 在 `methods` 对象中定义方法 methods: { greet: function (event) { // `this` 在方法里指向当前 Vue 实例 alert('Hello ' + this.name + '!') // `event` 是原生 DOM 事件 if (event) { alert(event.target.tagName) } } } }) } // 也可以用 JavaScript 直接调用方法 example2.greet() // => 'Hello Vue.js!'

$event代表DOM的原始事件。

事件修饰符

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

  • stop
  • prevent
  • capture
  • self
  • once
  • passive




...
...

使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用 v-on:click.prevent.self 会阻止所有的点击,而 v-on:click.self.prevent 只会阻止对元素自身的点击。
不要把.passive.prevent 一起使用,因为 .prevent 将会被忽略,同时浏览器可能会向你展示一个警告。请记住,.passive 会告诉浏览器你不想阻止事件的默认行为。

按键修饰符



全部的按键别名:

  • enter
  • tab
  • delete (捕获“删除”和“退格”键)
  • esc
  • space
  • up
  • down
  • left
  • right

可以通过全局 config.keyCodes 对象自定义按键修饰符别名:

// 可以使用 `v-on:keyup.f1`
Vue.config.keyCodes.f1 = 112

.exact 修饰符允许你控制由精确的系统修饰符组合触发的事件。

鼠标按钮修饰符

  • left
  • right
  • middle

这些修饰符会限制处理函数仅响应特定的鼠标按钮。

你可能感兴趣的:(Vue学习笔记之事件处理)