首先我們要知道什么是事件冒泡,什么是默認事件。
事件冒泡:
<div @click="a"> <div @click="b"></div> </div>
如上代碼,事件a和事件b,我點擊事件b的時候會將事件a也就是它的父級元素綁定的事件一同觸發,這就是冒泡。像水里的氣泡一樣,從最下面一直咕嚕咕嚕到最上面。
默認事件:
一些特殊的標簽,比如a標簽,input標簽和form表單submit這種類型,你點擊的話都會有一個默認的提交跳轉事件,這是默認的行為,所以是默認事件。
但是我們有的時候只需要觸發事件b,或者是只需要把a標簽當成一個普通的行標簽或者是塊標簽,這時候需要阻止冒泡和默認事件。
js里面:
function(e){ e.stopPropagation();//阻止冒泡事件 }
function(e){ e.preventDefault();//阻止默認行為 //return false;//也可以 }
但是vue已經處理好了:
@click.stop 代表阻止冒泡事件
@click.prevent 代表阻止默認事件