2 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超9個(gè)贊
在Vue中為DOM元素綁定事件的具體方法在文章中的 方法與事件處理器 章節(jié),通過(guò)v-on指令或事件語(yǔ)法糖 @ 為DOM元素綁定事件。Vue解析組件模板后,在綁定更新 v-on 指令時(shí)會(huì)為DOM元素綁定事件(當(dāng)然如果元素為 iframe ,會(huì)等到 iframe 加載完成后再為其綁定事件)。
Vue中為DOM元素綁定事件是采用DOM2級(jí)事件的處理方式,因?yàn)閂ue服務(wù)的是IE9以上的現(xiàn)代瀏覽器,他們也都是支持DOM2級(jí)事件。因此下例中
<div @click="func"></div>
實(shí)際上相當(dāng)于
el.addEventListener('click', func)
所以 addEventListener 支持綁定的事件, v-on 指令也都支持。同樣的理論上也可以解綁事件,雖然也有相應(yīng)的 api ,但是Vue文檔中并沒(méi)有顯示地告訴我們?cè)趺醋觥?br/>在代碼中可以看到,每個(gè) v-on 指令都有一個(gè)reset 方法, reset 方法是當(dāng)指令所綁定方法發(fā)生改變時(shí),重新綁定事件之前的解綁操作,我們可以利用這個(gè) api 來(lái)解綁事件。因此如果需要解綁事件,我們可以遍歷 vm._directives 找到相應(yīng)該指令,進(jìn)行解綁。
添加回答
舉報(bào)