zoukankan      html  css  js  c++  java
  • 组件通信

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    </head>
    <body>
    <div id="app">
    <!--想在父组件中绑定原生事件给组件 需要加.native 不加就被当作一个属性看待-->
    <!--<my-button @click.native="fn"></my-button>-->
    <my-button @click="fn" @mouseup="fn"></my-button>
    </div>
    <script src="../01-vue-basic/code/node_modules/vue/dist/vue.js"></script>
    <script>
    // 组件通信 props $emit $attrs $listeners
    /*
    子如何传父
    1 在子组件中调用$emit()方法发布一个事件
    2 在父组件中提供一个在子组件内部发布的事件处理函数
    3 在父组件订阅子组件内部发布的事件
    */
    let vm = new Vue({
    el: "#app",
    data: {
    content: "点我"
    },
    methods:{
    fn(num) {
    console.log(num,"fn() is called");
    }
    },
    components: {
    "MyButton": {
    mounted() {
    console.log(this.$listeners);// 绑定所有的方法
    },
    template: `
    <div>
    <button @click="$listeners.click(123);">点我</button>
    <button @click="$emit('click',23)">点我</button>
    <button @click="$listeners.click(123);" @mouseup="$listeners.mouseup(123);">点我</button>
    <button v-on="$listeners" >点我</button>
    </div>
    `
    }
    }
    });
    </script>
    </body>
    </html>
  • 相关阅读:
    swift 获取iphone设备型号
    如何判断静态库是否支持64位
    MAC登录界面多了一个其他账户
    swift4 UIScrollView滑动手势与UIPageViewController冲突解决办法
    swift 保留两位小数以及前面不0
    本地通知
    swift3 UIColor扩展
    swift3 控件创建
    数据库--数据库事务
    数据库---触发器trigger
  • 原文地址:https://www.cnblogs.com/zhx119/p/11371357.html
Copyright © 2011-2022 走看看