美文网首页
给组件绑定原生事件

给组件绑定原生事件

作者: 云凡的云凡 | 来源:发表于2020-10-11 21:52 被阅读0次
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>14给组件绑定原生事件</title>
        <script src="./vue.js"></script>
    </head>
    
    <body>
        <div id="app">
            <child @click="handleClick"></child>
        </div>
        <script>
            Vue.component('child', {
                template: '<div @click="handleChildClick">Child</div>',
                methods: {
                    handleChildClick() {
                        alert('c c')  //可以打印出来:在div元素上绑定的事件指的是监听的原生的事件
                        this.$emit('click')
                    }
                },
            })
            var vm = new Vue({
                el: "#app",
                methods: {
                    handleClick() {
                        alert(' c')  //没法被打印:在child组件绑定的事件监听的是自定义事件,自定义事件怎么被触发?
    
                    }
                },
            })
        </script>
    </body>
    
    </html>
    

    简洁版

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>14给组件绑定原生事件</title>
        <script src="./vue.js"></script>
    </head>
    
    <body>
        <div id="app">
            <child @click.native="handleClick"></child>
        </div>
        <script>
            Vue.component('child', {
                template: '<div @click="handleChildClick">Child</div>',
            })
            var vm = new Vue({
                el: "#app",
                methods: {
                    handleClick() {
                        alert(' c')
                        // 会打印:监听的已经不是内部组件向外触发的自定义事件了,而是原生的点击事件
    
                    }
                },
            })
        </script>
    </body>
    
    </html>
    

    相关文章

      网友评论

          本文标题:给组件绑定原生事件

          本文链接:https://www.haomeiwen.com/subject/owpkpktx.html