zoukankan      html  css  js  c++  java
  • vue 父子传值

    父组件 

    <my-compo c="c"></my-compo>

    动态传值

    <my-compo v-bind:c="c"></my-compo>

    子组件 props接收   调用时候 和react不同 不用this.props.c  直接使用{{c}}

    import Vue from "vue";
    
    const MyCompo = Vue.extend({
        props : ["c"],
        data : function(){
            
        },
        methods : {
            
        }
    });
    
    export default MyCompo;

    此时如果 子组件 改变 props值    

    父组件在  

    默认情况下不变!

    如果 需要改变   

    方法一:  .sync  (vue2 移除)

    <my-compo v-bind:c.sync="c"></my-compo>    

    //注意!! vue .sync 修饰符以前存在于vue1.0版本里,但是在在 2.0 中移除了 .sync 。
    //从 2.3.0 起我们重新引入了 .sync 修饰符,但是这次它只是作为一个编译时的语法糖存在。它会被扩展为一个自动更新父组件属性的 v-on 监听器。

    方法二:  传 引用类型值  (不推荐)

    import Vue from "vue";
    import MyCompo from "./components/MyCompo.js";
    
    new Vue({
        el : "#app",
        data : {
            c : 333,
            d : {
                v : 8888
            }
        },
        components : {
            "my-compo" : MyCompo
        }
    });

     方法三:   类似 react  父组件向子组件传函数  通过子组件调用运行此函数   改变父组件值   推荐)

    父组件

    <my-compo v-on:changea="changea"></my-compo>

    ******************************************************

    import Vue from "vue";

    import MyCompo from "./MyCompo.vue";

     

    new Vue({

        el : "#app",

        data : {

           a : 100

        },

        components : {

           MyCompo

        },

        methods : {

           changea : function(number){

               this.a += number;

           }

        }

    });

    子组件 

    <style>
        
    </style>
    
    <template>
        <div>
            <h1>我是子组件</h1>
            <button v-on:click="changeAemit">按我</button>
        </div>
    </template>
    
    <script>
        export default {
            methods : {
                changeAemit : function(){
                    this.$emit("changea",8);
                }
            }
        }
    </script>

    $emit
    参数:
    
    {string} eventName
    [...args]
    触发当前实例上的事件。附加参数都会传给监听器回调。
  • 相关阅读:
    Qt Quick实现的涂鸦程序
    Java并发学习之十九——线程同步工具之Phaser
    poj 1845(等比数列前n项和及高速幂)
    装饰模式(旧恋)
    cocos2d-x 3.1.1 学习笔记[3]Action 动作
    Nmap 源代码学习四 软件简单使用
    关于phpcmsv9更新缓存出现链接被重置的问题
    POJ 3159 Candies(SPFA+栈)差分约束
    Ubuntu 配置ISCSI服务
    iSCSI存储技术
  • 原文地址:https://www.cnblogs.com/caoleyun/p/12692339.html
Copyright © 2011-2022 走看看