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>
  • 相关阅读:
    hdu 5115 区间dp ***
    CF 149D Coloring Brackets 区间dp ****
    区间dp总结
    hdu 5284 BestCoder Round #48 ($) 1001 水题 *
    vijos 1038 括号+路径 ***
    vijos 1037 ***
    vijos 1028 LIS *
    使用alpine 构建 golang 运行容器
    Go Http包解析:为什么需要response.Body.Close()
    如果open的file不close , 会有什么样的影响
  • 原文地址:https://www.cnblogs.com/zhx119/p/11371357.html
Copyright © 2011-2022 走看看