uni-app 子组件如何调用父组件的方法

1.在父组件methods中定义一个方法:

changeType:function(type){
    this.typeActive = type;
    alert(type);
}

2.在父组件引用子组件时绑定该方法:

<cate-top :catelist="catelist"  v-on:pChangeType="changeType"></cate-top>

3.在子组件中绑定点击事件:

复制代码
<template name="cate-top">
    <view class="activity-cover">
        <view class="up-mode">
            <view class="li" v-for="(item,index) in types" :key="index"  @tap="changeType(item.cate)">
                <text>{{item.name}}</text>
            </view>
        </view>
    </view>
</template>
复制代码

点击事件为 

@tap="changeType(item.cate)"

4.在子组件 methods 中点击事件中,使用 $emit 调用父组件的changeType()方法:

changeType:function(type){
    this.$emit("pChangeType")
},

传参数:

changeType:function(type){
    this.$emit("pChangeType",type)
},

子组件中第一个参数是父组件中调用子组件并传递方法需要绑定的方法名,第二个参数是需要传递的参数。

posted @ 2019-06-06 10:25  印度阿铭  阅读(3357)  评论(0编辑  收藏  举报