溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

給組件綁定原生事件

發(fā)布時(shí)間:2020-07-02 02:45:27 來源:網(wǎng)絡(luò) 閱讀:215 作者:梁十八 欄目:web開發(fā)
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="./vue.js"></script>
    <!-- <script src="http://cdn.staticfile.org/vue/2.6.10/vue.common.dev.js"></script> -->
</head>
<body>
<div id="root">
    //這里綁定的事件是指的自定義事件
    <child @click="handleClick"></child>
</div>
<script type="text/javascript">
    Vue.component("child", {
        //這里綁定的事件是指的原生的事件
        template: "<div @click='handleChildClick'>I am a child</div>",
        methods: {
            handleChildClick: function() {
                alert("childClick");
                //想觸發(fā)父組件的handleClick必須這樣做:
                this.$emit("click")
            }
        }
    });
    var vm = new Vue({
        el: "#root",
        methods: {
            handleClick: function() {
                //此處不能觸發(fā)<child @click="handleClick"></child>綁定的handleClick事件,因?yàn)檫@是自定義事件
                alert("fatherClick");
            }
        }
    })
</script>
</body>
</html>

但是,像上面這種寫法太麻煩,有時(shí)候就想在child(原生組件)監(jiān)聽,可以加上.native:

<!DOCTYPE html>
<html>
<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <script src="./vue.js"></script>
    <!-- <script src="http://cdn.staticfile.org/vue/2.6.10/vue.common.dev.js"></script> -->
</head>
<body>
<div id="root">
    //加了.native可以觸發(fā)handleClick <br>
    <child @click.native="handleClick"></child>
    //不加.native無法觸發(fā)handleClick <br>
    <child @click="handleClick"></child>

</div>
<script type="text/javascript">
    Vue.component("child", {
        //這里綁定的事件是指的原生的事件
        template: "<div>I am a child</div>",
    });
    var vm = new Vue({
        el: "#root",
        methods: {
            handleClick: function() {
                //此處不能觸發(fā)<child @click="handleClick"></child>綁定的handleClick事件,因?yàn)檫@是自定義事件
                alert("fatherClick");
            }
        }
    })
</script>
</body>
</html>
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI