码迷,mamicode.com
首页 > 其他好文 > 详细

给组件绑定原生事件

时间:2019-07-12 09:46:25      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:function   src   fat   on()   var   temp   utf-8   nat   ati   

<!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"); //想触发父组件的handleClick必须这样做: this.$emit("click") } } }); var vm = new Vue({ el: "#root", methods: { handleClick: function() { //此处不能触发<child @click="handleClick"></child>绑定的handleClick事件,因为这是自定义事件 alert("fatherClick"); } } }) </script> </body> </html>

但是,像上面这种写法太麻烦,有时候就想在child(原生组件)监听,可以加上.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可以触发handleClick <br>
    <child @click.native="handleClick"></child>
    //不加.native无法触发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() {
                //此处不能触发<child @click="handleClick"></child>绑定的handleClick事件,因为这是自定义事件
                alert("fatherClick");
            }
        }
    })
</script>
</body>
</html>

给组件绑定原生事件

标签:function   src   fat   on()   var   temp   utf-8   nat   ati   

原文地址:https://blog.51cto.com/5660061/2419511

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!