一、基础用法

绑定监听@click(以监听click为例,其他如keyup,用法类似)
v-on:click=”fun”
@click=”fun”
@click=”fun(参数)”

  1. <button @click="test1">test1</button>
  2. <button @click="test2('abc')">test2</button>
  3. <button @click="test3('abcd', $event)">test3</button>
  4. methods: {
  5. test1(eve) {//test1函数没有参数,默认传递 $event
  6. alert(eve.target.innerHTML) //test1
  7. },
  8. test2 (msg) { //test1函数有参数,传递该参数
  9. alert(msg) // abc
  10. },
  11. test3 (msg, event) { //有参数,如果想获取到enevt,则函数中需要写 $event
  12. alert(msg+'---'+event.target.textContent) // abcd---test3
  13. }
  14. }

二、时间修饰符

@click.stop与@click.prevent
@click.stop 阻止事件冒泡
@click.prevent 阻止事件的默认行为

  1. <a href="http://www.baidu.com" @click.prevent="test4">百度一下</a>
  2. //阻止a标签跳转,仅执行函数test4
  3. <form action="/xxx" @submit.prevent="test5"> //阻止表单提交,仅执行函数test5
  4. <input type="submit" value="注册">
  5. </form>

三、按键修饰符

@keyup.enter

  1. //按下enter时,执行方法test7
  2. <input type="text" @keyup.enter="test7">
  3. methods: {
  4. test7 (event) {
  5. console.log(event.keyCode)
  6. alert(event.target.value)
  7. }
  8. }