国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Vue事件處理原理及過程詳解

瀏覽:92日期:2023-02-01 10:19:55

Vue事件監聽的方式貌似違背了關注點分離(separation of concern)的傳統理念。實際上,所有的Vue.js事件處理方法和表達式都嚴格綁定在當前視圖的ViewModel上,它不會導致維護上的困難,使用v-on有以下好處:

1、掃一眼HTML模板便能輕松定位在JS代碼里對應的方法。

2、無須在JS里手動綁定事件,ViewModel代碼可以是非常純粹的邏輯,和DOM完全解耦,更易于測試。

3、當一個ViewModel被銷毀時,所有的事件處理器都會自動被刪除,無須擔心自己如何清理它們。

事件處理步驟

1. 綁定監視

2. 事件修飾符

3. 按鍵修飾符

代碼如下

<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <title>Title</title></head><body><!--列表過濾與排序--><div id='demo'> <h2>綁定監聽</h2> <button @click='test1'>test1</button> <button @click='test2(123)'>test2</button> <button @click='test3'>test3</button> <!-- 無參函數,實際上是傳了$event對象--> <button @click='test4(1234,$event)'>test4</button> <h2>事件修飾符</h2> <!--存在事件冒泡的情況--> <h3>阻止事件冒泡</h3> <div @click='test5'> <!--@click.stop 停止事件冒泡 --> <div @click.stop='test6'></div> </div> <br> <h3>阻止事件的默認行為</h3> <a rel='external nofollow' @click.prevent='test7'>去百度</a> <br> <h2>按鍵修飾符</h2> <!-- <input type='text' @keyup='test8'>--> <!--原始寫法--> <!--<input type='text' @keyup.13='test8'>--> <!--13就是enter鍵的keyCode碼--> <input type='text' @keyup.enter='test8'/> <!--直接寫名字--></div><script type='text/javascript' src='http://www.intensediesel.com/bcjs/lib/vue.min.js'></script><script> new Vue({ el: '#demo', methods: { test1(){alert(’test1’); }, test2(number){alert(number); }, test3(event){alert(event.target.innerHTML); }, test4(number, event){alert(number + ’----’ + event.target.innerHTML); }, test5(){alert(’out’) }, test6(){alert(’inner’) }, test7(){//event.preventDefault() //原生的方式阻止事件的默認行為alert(’點擊,但是通過@click.prevent阻止事件的默認行為,不會跳轉到百度去了’) }, test8(event){//原始寫法;//if (event.keyCode === 13){ // Enter鍵// alert(event.target.value)//}alert(event.target.value) } } });</script></body></html>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 乌恰县| 招远市| 靖安县| 门源| 井冈山市| 万州区| 九江县| 桐柏县| 洛宁县| 桦南县| 邢台县| 灵台县| 南皮县| 长宁县| 泰来县| 莎车县| 肥乡县| 永城市| 宝鸡市| 太原市| 凌海市| 德昌县| 南华县| 北票市| 中西区| 奎屯市| 镶黄旗| 磴口县| 长宁区| 明星| 甘德县| 隆德县| 黄平县| 高唐县| 宁海县| 沾化县| 荔浦县| 贡嘎县| 密云县| 喀喇沁旗| 邹平县|