0

0

Vue中父子组件间怎么通信?聊聊父传子和子传父的方法

青灯夜游

青灯夜游

发布时间:2021-11-30 19:41:40

|

3274人浏览过

|

来源于掘金社区

转载

vue中父子组件间怎么通信?下面本篇文章就来带大家了解一下vue父子组件通信,介绍一下父向子传值和子向父传值的方法,希望对大家有所帮助。

Vue中父子组件间怎么通信?聊聊父传子和子传父的方法

Vue父子组件

什么是父子组件?

在一个组件中引入另一个组件,被引入的就叫做子组件,因为vue的模块化,会把有公共的部分单独抽成一个模块,不会把所有页面内容写在一个vue文件下,因为模块化的原因,避免不了两个模块之间的通信问题,这时候就有了模块(组件)之间的数据传递问题。【相关推荐:《vue.js教程》】

Vue父子组件通信

在vue中经常会一个组件经常会用到另一个组件的数据或者方法,这时候就有了父子组件之间的通信问题

立即学习前端免费学习笔记(深入)”;

Vue 父传子

1.先看代码,讲解在下面


//父组件
//子组件

讲解:
1.先写出基本的模板分离组件

2.在子组件中加入props属性,用对象方式,,在props里面可以写你需要传的参数,参数也用对象方式,代码比较清晰,

    //子组件
    Vue.component("cpn3", {
        template: "#cpn3",
        // 组件里的data是一个函数,必须要返回一个对象,变量写在返回对象里
        props: {
            ctitle: {
            //参数也使用对象形式,type传类型  default函数,是在找不到参数时返回一个值显示
                type: String,
                default () {
                    return {}
                }
            }
        }
    })

2.然后在父组件中加入需要的属性

//父组件
    const app = new Vue({
        el: "#app",
        data: {
        //这里的title就是要传入子组件的属性  在父组件中定义
            title: 'orange'
        },
        methods: {},

    })

3.在父组件中绑定两个参数

 
//可以理解为将父组件中title 赋值给 ctitle,这样子组件就可以使用父组件的data属性了

4.最后在在子组件中要使用子组件定义的属性名

//子组件

Vue 子传父

1.子传父的意思就是,,子组件内容传给父组件,,使父组件可以随时使用子组件传来的数据,使用方法为:自定义函数

Andi
Andi

智能搜索助手,可以帮助解决详细的问题

下载

1、首先我们来做一个仿淘宝侧边栏商品,点击或者鼠标移动到上面出现内容商品案例

1.png

2、以上面这个图片为例,我们来讲一下组件传递的子传父

2.1我们将子组件和父组件分开先,挨个讲  先来看看子组件代码



讲解:子组件就是写出一个组件(html)包装起来,并且可以随时使用, 也就相当于html一样的,只是打包起来而已(这么理解应该没什么问题)

1.子组件和vue一样有data,methods,这属性 所以在data中写一个数组,然后用v-for的方式遍历生成按钮 和正常写法没什么差别,然后写个函数,绑定点击事件,并且将item,也就是数组传入的对象传入函数,

2.然后最重要,最关键的一步来了,就是在你绑定的点击事件函数中,发射一个自定义函数给父组件,就是发送给父组件

methods: {
            // 自定义事件
            goodsclick(item) {
            //itemclick就是自定义函数,并且将item也传过去给父组件
                this.$emit('itemclick', item)
            }
        }

2.png

这就是子组件写完,这是子组件的样式,上图所示

2、接下来讲讲父组件怎么接收子组件传来的自定义事件


讲解一下:你写好了子组件就要调用,调用就是你的组件名作为标签即可,,这里是

在父组件中写一个函数然后在里面绑定从子组件传过来的自定义事件,这样就成功绑定子组件,这样就完成子组件传数据到父组件了

本章完

更多编程相关知识,请访问:编程入门!!

相关专题

更多
vue.js为什么报错
vue.js为什么报错

vue.js报错的原因:1、语法错误;2、组件使用不当;3、数据绑定问题;4、生命周期钩子使用不当;5、插件或依赖问题;6、路由配置错误;7、异步操作处理不当等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

120

2024.03.11

vue.js插槽有哪些用
vue.js插槽有哪些用

vue.js插槽的作用:1、提高组件的可重用性;2、实现组件的灵活布局;3、实现组件间的数据传递和交互;4、促进组件的解耦和模块化。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

174

2024.03.11

vue.js怎么带参数跳转
vue.js怎么带参数跳转

vue.js带参数跳转的方法:1、定义路由;2、在组件中使用路由参数;3、进行带参数的跳转。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

90

2024.03.11

html版权符号
html版权符号

html版权符号是“©”,可以在html源文件中直接输入或者从word中复制粘贴过来,php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

617

2023.06.14

html在线编辑器
html在线编辑器

html在线编辑器是用于在线编辑的工具,编辑的内容是基于HTML的文档。它经常被应用于留言板留言、论坛发贴、Blog编写日志或等需要用户输入普通HTML的地方,是Web应用的常用模块之一。php中文网为大家带来了html在线编辑器的相关教程、以及相关文章等内容,供大家免费下载使用。

659

2023.06.21

html网页制作
html网页制作

html网页制作是指使用超文本标记语言来设计和创建网页的过程,html是一种标记语言,它使用标记来描述文档结构和语义,并定义了网页中的各种元素和内容的呈现方式。本专题为大家提供html网页制作的相关的文章、下载、课程内容,供大家免费下载体验。

473

2023.07.31

html空格
html空格

html空格是一种用于在网页中添加间隔和对齐文本的特殊字符,被用于在网页中插入额外的空间,以改变元素之间的排列和对齐方式。本专题为大家提供html空格的相关的文章、下载、课程内容,供大家免费下载体验。

245

2023.08.01

html是什么
html是什么

HTML是一种标准标记语言,用于创建和呈现网页的结构和内容,是互联网发展的基石,为网页开发提供了丰富的功能和灵活性。本专题为大家提供html相关的各种文章、以及下载和课程。

2902

2023.08.11

c++ 根号
c++ 根号

本专题整合了c++根号相关教程,阅读专题下面的文章了解更多详细内容。

22

2026.01.23

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Vue 教程
Vue 教程

共42课时 | 7.1万人学习

Vue3.x 工具篇--十天技能课堂
Vue3.x 工具篇--十天技能课堂

共26课时 | 1.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号