当前位置:   article > 正文

Vue子组件向父组件传值_vue 子组件向父组件传值 本地可以到测试就报不是一个函数怎么解决

vue 子组件向父组件传值 本地可以到测试就报不是一个函数怎么解决

子组件使用this.$emit()向父组件传值

在通信中,无论是子组件向父组件传值还是父组件向子组件传值,他们都有一个共同点就是有中间介质,子向父的介质是自定义事件,父向子的介质是props中的属性**。
子组件向父组件传值

  • 父组件中引入子组件
    使用important引入组件
    比如

    import diubao  from './diubao'
    
    • 1

    声明

    //定义组件
    export default {
    	components: {
          diubao 
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    使用组件

    <diubao v-if="diubaoShow" @diubaosend="sendmessage" ref="toDiubao"/>
    
    • 1
  • 子组件向父组件传值
    子组件向父组件传值使用 this.$emit(“function” , param); 其中function为父组件定义函数,param为需要传递参数。

    sendmessage(params) {
        this.$emit('diubaosend', params)
    },
    
    • 1
    • 2
    • 3

    父组件中,在引用子组件处添加函数v-on:function=“function1”,其中function为子组件中定义函数,function1为父组件中定义函数----用于接收子组件传值并进行数据处理,可定义为同一名称。

    <diubao v-if="diubaoShow" @diubaosend="sendmessage" ref="toDiubao"/>
    
    • 1
    sendmessage(params) {
        console.log("index", params)
        this.$refs.toSocket.onSendWebsocket(params);
    },
    
    • 1
    • 2
    • 3
    • 4

父组件触发子组件方法

1、在子组件中:<div></div>是必须要存在的 ;
2、在父组件中:首先要引入子组件import Child from './child';
3、 <child ref="mychild"></child>是在父组件中为子组件添加一个占位,ref="mychild"是子组件在父组件中的名字;
4、父组件中components: {是声明子组件在父组件中的名字;
5、在父组件的方法中调用子组件的方法,很重要this.$refs.mychild.parentHandleclick("嘿嘿嘿");

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/623847
推荐阅读
相关标签
  

闽ICP备14008679号