美文网首页
Vue 子组件传递事件给父组件进行通信

Vue 子组件传递事件给父组件进行通信

作者: GaoEnron | 来源:发表于2020-01-11 20:18 被阅读0次

子组件和父组件进行通信

可以通过子组件响应方法函数然后发送事件函数,然后父组件进行相应的事件监听然后做相应的处理操作

1. 首先创建子组件模板

<template id="cpn">
        <div>
            <button v-for="item in categories" type="button" @click="btnClick(item)">        {{item.name}}</button>
        </div>
</template>

2. 注册子组件

发送事件函数 this.$emit('itemclick', item) 第一个参数发送事件函数,第二参数传递参数

  const cpn = {
                template: '#cpn',
                props: ['cmovies', 'cmessage'],
                data() {
                    return {
                        categories: [
                            {id: 'aaa', name: '热门推荐'},
                            {id: 'bbb', name: '热门推荐1'},
                            {id: 'ccc', name: '热门推荐2'},
                            {id: 'ddd', name: '热门推荐3'},
                            {id: 'eee', name: '热门推荐4'},
                            {id: 'fff', name: '热门推荐5'}
                        ]
                    }
                },
                    
                methods: {
                    btnClick(item) {
                        console.log(item.name)
                        /* 发送一个事件,父组件需要监听这个事件 */
                        this.$emit('itemclick', item)
                    }
                }
            }

3. 创建Vue对象,注册子组件

使用定义的组件监听发送的事件函数,父组件接收到子组件传递的时间

<div id="app">
        <h1>{{message}}</h1>
        <cpn @itemclick="cpnClick"></cpn>
</div>
const app = new Vue({
                el: "#app",
                data: {
                    message: "你好啊",
                    cmovies: ["海王", "海贼王", "海尔兄弟"],
                    cmessage: "wode"
                },
                components: {
                    cpn
                },
                methods: {
                    cpnClick() {
                        console.log("事件传递")
                    }
                }
                
            })

相关文章

  • Vue-自定义事件

    在父组件使用prop 传递数据给子组件,子组件则是通过事件传递数据给父组件的。 Vue实例都会实现事件接口: 1....

  • vue使用v-model实现父子组件间通信

    前言 vue父子组件之间的通信方式: 父组件到子组件:通过props传递数据; 子组件到父组件:通过自定义事件实现...

  • 组件通信

    组件关系可以分为父子组件通信、兄弟组件通信、跨级组件通信 自定义事件--子组件给父组件传递数据 子组件$emit(...

  • vue组件传参

    父子组件通信 1、父组件给子组件传递数据,请查看下面这篇文章vue中的prop2、子组件给父组件传递数据(一般不推...

  • Vue父组件调用子组件事件

    Vue父组件向子组件传递事件/调用事件 不是传递数据(props)哦,适用于 Vue 2.0 方法一:子组件监听父...

  • Vue组件详解---组件通信

    组件关系可分为父子组件通信、兄弟组件通信、跨级组件通信 自定义事件—子组件给父组件传递数据 使用v­-on 除了监...

  • Vue 子组件传递事件给父组件进行通信

    子组件和父组件进行通信 可以通过子组件响应方法函数然后发送事件函数,然后父组件进行相应的事件监听然后做相应的处理操...

  • Vue如何实现组件通信?

    Vue组件通信的三种情况: 父子通信 爷孙通信 兄弟通信 父子通信:父组件使用Prop向子组件传递数据,子组件通过...

  • 老生常谈——vue组件之间通信

    老生常谈的组件之间通信 vue组件之间的通信细分为三种情况:兄弟组件之间的通信,父组件向子组件传递数据,子组件向父...

  • Vue父子组件之间的通信

    在Vue中,父子组件的关系可以总结为,父组件通过prop向下传递,给子组件发数据,子组件通过事件给父组件发送消息。...

网友评论

      本文标题:Vue 子组件传递事件给父组件进行通信

      本文链接:https://www.haomeiwen.com/subject/chybactx.html