@click.stop 阻止父component执行click,只有本component的click有效。

@click.prevent 阻止<a>的href执行,转而执行prevent指定的方法。

另外JS 调用方法时,可以不加()," " 等,可以直接使用函数名。不过为了统一和易读性,建议还是书写完整。

HTML

<div id="app">
  <div @click="box()">
    <div @click.stop="boxchild">
      Click me
    </div>
  </div>
  <a href="google.com" @click.prevent="box">Click this link</a>
</div>

Vue

var app = new Vue({
  el: "#app",
  data: {
    name: "Vue.js"
  },
  methods: {
    box: function() {
      alert("this is box event");
    },
    boxchild: function() {
      alert("this is boxchild event");
    }
  }
});

代码在线演示。

更多推荐