中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VUE中的click事件怎么解析

發布時間:2022-01-06 14:31:57 來源:億速云 閱讀:247 作者:柒染 欄目:開發技術

今天就跟大家聊聊有關VUE中的click事件怎么解析,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

    1. 概述

    老話說的好:努力幫別人解決難題,你的難題也就不難解決了。

    言歸正傳,今天我們來聊聊 VUE3 的 click 事件的相關知識。

    2. click 事件

    2.1 實現數字遞減

    <body>
        <div id="myDiv"></div>
    </body>
    <script>
        const app = Vue.createApp({     // 創建一個vue應用實例
            data() {
                return {
                    num : 5
                }
            },
            methods : {
                decr() {
                    if(this.num <= 0) {
                        alert("庫存為0,無法購買")
                        return;
                    }
                    this.num-- ;
                },
            },
            template : `
                <div>
                    商品庫存剩余 {{num}} 件
                    <button @click="decr">購買</button><br>
                </div>  
            `
        });
    
        const vm = app.mount('#myDiv');  // 綁定id為 myDiv 的元素

    該例中,每點一次按鈕,商品庫存都會減 1

    VUE中的click事件怎么解析

    2.2 事件方法中獲取 event 對象

    decr(event) {
                    console.info(event);
                    console.info(event.target);
                    if(this.num <= 0) {
                        alert("庫存為0,無法購買")
                        return;
                    }
                    this.num-- ;
                },

    方法中可以獲取 event 對象,從中可以獲取一些事件信息

    VUE中的click事件怎么解析

    2.3 事件方法中增加參數

    methods : {
                decr(n) {
                    if(this.num < 2) {
                        alert("庫存不足,無法購買")
                        return;
                    }
                    this.num -= n;
                },
            },
            template : `
                <div>
                    商品庫存剩余 {{num}} 件
                    <button @click="decr(2)">購買2件</button><br>
                </div>  
            `

    事件方法 decr 中增加了參數 n,依據參數進行計算

    VUE中的click事件怎么解析

    2.4 有參事件方法中獲取 event 對象

    methods : {
                decr(n, event) {
                    console.info(event);
                    console.info(event.target);
                    if(this.num < 2) {
                        alert("庫存不足,無法購買")
                        return;
                    }
                    this.num -= n;
                },
            },
            template : `
                <div>
                    商品庫存剩余 {{num}} 件
                    <button @click="decr(2, $event)">購買2件</button><br>
                </div>  
            `

    VUE中的click事件怎么解析

    2.5 點擊按鈕執行多個方法

    methods : {
                f1() {
                    alert("f1")
                },
                f2() {
                    alert("f2")
                },
            },
            template : `
                <div>
                    <button @click="f1(), f2()">執行多個方法</button><br>
                </div>  
            `

    2.6 事件冒泡

    methods : {
                clickDiv() {
                    alert("div");
                },
                clickButton() {
                    alert("button");
                }
            },
            template : `
                <div @click="clickDiv">
                    <button @click="clickButton">事件冒泡</button><br>
                </div>  
            `

    點擊按鈕,會先執行 button 上的 click 事件,然后執行 div 上的 click 事件

    2.7 阻止冒泡

            template : `
                <div @click="clickDiv">
                    <button @click.stop="clickButton">阻止事件冒泡</button><br>
                </div>  
            `

    如果我們希望點擊按鈕時只執行按鈕的事件,可以在按鈕上使用 @click.stop 的寫法阻止事件冒泡。

    2.8 事件捕獲

            template : `
                <div @click.capture="clickDiv">
                    <button @click="clickButton">事件捕獲</button><br>
                </div>  
            `

    如果希望先執行 div 事件,再執行 button 的事件,可以在 div 上使用 @click.capture 的寫法,讓事件由外向內執行

    2.9 事件只執行一次

            template : `
                <div @click.once="clickDiv">
                    <button @click="clickButton">事件</button><br>
                </div>  
            `

    在 div 上使用 @click.once ,這樣 div 的事件,只會被執行一次

    看完上述內容,你們對VUE中的click事件怎么解析有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    孟连| 福安市| 子洲县| 琼结县| 吐鲁番市| 稻城县| 博湖县| 会理县| 河北省| 长沙县| 石嘴山市| 大丰市| 宿迁市| 涟水县| 邛崃市| 郯城县| 德庆县| 甘南县| 黑河市| 玛纳斯县| 中西区| 中江县| 嘉荫县| 东阳市| 台东县| 竹山县| 鹿泉市| 吴堡县| 邳州市| 封开县| 棋牌| 东台市| 渝中区| 芜湖市| 湛江市| 莎车县| 弥渡县| 京山县| 绥芬河市| 离岛区| 筠连县|