返回顶部
首页 > 资讯 > 精选 >vue组件间的通信,子组件向父组件传值的方式是什么
  • 534
分享到

vue组件间的通信,子组件向父组件传值的方式是什么

2023-07-05 13:07:31 534人浏览 安东尼
摘要

今天小编给大家分享一下Vue组件间的通信,子组件向父组件传值的方式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、子

今天小编给大家分享一下Vue组件间的通信,子组件向父组件传值的方式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

一、子组件通过this.$emit()的方式将值传递给父组件

父组件里面的子组件通过@func绑定一个函数来处理

子组件传过来的数据

<template>    <div class="app">       <input @click="sendMsg" type="button" value="给父组件传递值">    </div></template><script>export default {     data () {        return {            //将msg传递给父组件            msg: "我是子组件的msg",        }    },     methods:{         sendMsg(){             //func: 是父组件指定的传数据绑定的函数,this.msg:子组件给父组件传递的数据             this.$emit('func',this.msg)         }     }}</script>

父组件

<template>    <div class="app">        <child @func="getMsgFORMSon"></child>    </div></template><script>import child from './child.vue'export default {    data () {        return {            msgFormSon: "this is msg"        }    },    components:{        child,    },    methods:{            getMsgFormSon(data){                this.msgFormSon = data                console.log(this.msgFormSon)            }    }}</script>

二、通过vuex来传递组件间的数据

vuex就是把数据放到内存里面去,各个组件间都可以共享vuex里面的数据

在一个组件间调用this.$store.dispatch(&lsquo;findUserInfoList&rsquo;, q_userInfo_form); 来触发vuex里面函数修改vuex的数据,然后在另一个组件用计算属性映射获取vuex的这个属性值,就可以实现组件间的数据传递

computed: mapState({      //映射vuex的相关属性值      userInfoList: state => state.userInfoModule.userInfoList,      start: state => state.userInfoModule.start,      total: state => state.userInfoModule.total,}),method:{      //查询操作      findUserInfoList: function(q_userInfoForm, start){          this.q_userInfoForm.start = (start === null) ? 1 : start;          this.$store.dispatch('findUserInfoList', q_userInfo_form);      },}

三、通过中央总线来传递组件间的数据

对于一些简单的项目里的可能又不是父子组件,可能是同级组件的,另一方面又没有必要使用Vuex,针对这种情形可以使用中央事件总线(Event Bus)来解决问题,主要用到vue对象的$on和$emit事件,在同一个vue的实例可以触发这两个事件,比如子组件传递数据到父组件,在子组件通过同一个vue对象触发$emit事件传递数据,在父组件通过vue实例的$on监听刚刚emit触发的事件来获取子组件传递过来的数据

先创建一个constantsBus.js文件,里面根据不同模块创建相关的vue实例

import Vue from 'vue';//用户管理总线export const userBus = new Vue();//管理员管理总线export const adminBus = new Vue();

在一个组件间调用$emit传递数据

//引用刚刚创建的constantsBus.jsimport * as constantsBus from '@/common/constantsBus';

vue组件间的通信,子组件向父组件传值的方式是什么

在另个接收数据的组件用$on来监听获取emit传过来的数据

created() {      let that = this;      //监听子组件的事件,获取其他组件传递过来的data数据      constantsBus.processBus.$on('processChooseAssessor', data => {          //获取emit触发的processChooseAssessor事件传递过来的data数据      });},

四、通过修改父组件传过来的对象属性

一般来说在vue的数据传递是在父组件传子组件通过属性来传,但是通过属性来传值,是单向的,子组件不能修改父组件的prop值,如果在子组件里面修改父组件传过来的prop属性值,会报错,但是也有例外,对象类型的除外,如果父组件传给子组件的属性是对象的话,是可以修改对象里面的值的,并且修改后也对父组件可见,因为对象的话最后的引用都是指向同一块内存,不受子组件不可以修改父组件的属性约束。(不过不建议这样处理,子组件可以修改父组件的属性会污染数据传递,可能以后在那个子组件改了都不知道,一般对象的传递要深拷贝)

五、父组件使用子组件的引用ref

调用子组件的方法获取子组件的数据

在子组件写一个获取数据的方法

vue组件间的通信,子组件向父组件传值的方式是什么

父组件通过子组件的ref调用这个方法获取子组件的数据

<trademark-file-upload ref="trademarkFileUpload" :uploadFileList="uploadFileList"></trademark-file-upload><script>let fileList = this.$refs.trademarkFileUpload.getFileList();<script>

以上就是“vue组件间的通信,子组件向父组件传值的方式是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

--结束END--

本文标题: vue组件间的通信,子组件向父组件传值的方式是什么

本文链接: https://lsjlt.com/news/352110.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • vue组件间的通信,子组件向父组件传值的方式是什么
    今天小编给大家分享一下vue组件间的通信,子组件向父组件传值的方式是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、子...
    99+
    2023-07-05
  • vue组件间的通信,子组件向父组件传值的方式汇总
    目录一、子组件通过this.$emit()的方式将值传递给父组件二、通过vuex来传递组件间的数据三、通过中央总线来传递组件间的数据四、通过修改父组件传过来的对象属性五、父组件使用子...
    99+
    2023-03-20
    vue组件通信 vue子组件 vue父组件传值
  • Vue子组件向父组件传值的方法是什么
    这篇文章主要介绍了Vue子组件向父组件传值的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue子组件向父组件传值的方法是什么文章都会有所收获,下面我们一起来看看吧。一、要点概述子组件:通过某种事件(...
    99+
    2023-07-05
  • vue父组件如何向子组件传值
    vue父组件向子组件传值的方法:vue父组件是通过props向子组件传值的,示例如下:父组件调用子组件时,绑定动态属性。<v-header :title='title' :homemsg='...
    99+
    2024-04-02
  • vue之父组件向子组件传值并改变子组件的样式
    问题描述:在做视频网站过程中发现每个视频的样式其实是大致相同的,所以就想着直接写个组件,但是又看不懂官网的传值,所以自己找了个视频看明白了。 想实现的效果: vue父组件向子组件传值...
    99+
    2022-12-24
    vue父组件向子组件传值 vue父组件改变子组件的样式
  • vue中子组件怎么向父组件传值
    vue中子组件怎么向父组件传值,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一,子组件主动触发事件将数据传递给父组件1,在子组件上绑定某个事件以及事件触发的函数子组件代码&...
    99+
    2023-06-20
  • Vue子组件向父组件传值示范方法
    目录一、要点概述二、分步讲解三、总代码和运行结果一、要点概述 子组件:通过某种事件(这里是@click点击事件,也可以是其他事件)发送数据,this.$emit('事件名&#...
    99+
    2023-03-20
    Vue子向父传值 Vue子组件向父组件传值
  • Vue组件通信方式(父传子、子传父、兄弟通信)
    目录父组件传到子组件子组件向父组件传值非父子传参 (事件总线)vue 跨页面双向通信同源通信非同源通讯父组件传到子组件 父组件是通过props属性给子组件通信的 数据是单向流动 父&...
    99+
    2024-04-02
  • Vue怎么用父组件向子组件通信
    本文小编为大家详细介绍“Vue怎么用父组件向子组件通信”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue怎么用父组件向子组件通信”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。props组件实例的作用域是孤立的...
    99+
    2023-07-04
  • React父子组件传值(组件通信)的实现方法
    目录1、父组件传值子组件2、子组件传值父组件3、兄弟组件传值1、父组件传值子组件 在引用子组件的时候传递,相当于一个属性,例如:在子组件内通过porps.param获取到这个para...
    99+
    2024-04-02
  • Vue中父子组件间通信的方法是什么
    这篇文章主要讲解了“Vue中父子组件间通信的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue中父子组件间通信的方法是什么”吧!1、父组件传递给子组件父组件传递给子组件:通过pr...
    99+
    2023-07-04
  • vue中怎么实现子组件向父组件传值
    这篇文章给大家介绍vue中怎么实现子组件向父组件传值,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。父组件这么写<component-a v-on:child-say=&...
    99+
    2024-04-02
  • Vue中怎么实现父组件向子组件传值
    这期内容当中小编将会给大家带来有关Vue中怎么实现父组件向子组件传值,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1:在src/components/child/文件夹下...
    99+
    2024-04-02
  • Vue3父子组件间通信、组件间双向绑定的方法
    父子组件可通过事件 进行通信前面的笔记 —— 《Vue3 | 组件的定义及复用性、局部组件、全局组件、组件间传值及其校验、单项数据流、Non-props属性》,单向数据流的概念,即子组件无法修改来自父组件的数据字段,假如确要修改,可以使用下...
    99+
    2023-05-15
    Vue3
  • Vue中怎么利用父组件向子组件通信
    今天就跟大家聊聊有关Vue中怎么利用父组件向子组件通信,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。props组件实例的作用域是孤立的。子组件的模板...
    99+
    2024-04-02
  • 浅析Vue中父子组件间怎么通信(父传子|子传父)
    1、父组件传递给子组件⭐⭐父组件传递给子组件:通过props属性;【相关推荐:vuejs视频教程、web前端开发】子组件传递给父组件:通过$emit触发事件;  这里我们知道,父组件有一些数据需要子组件来进行展示,那我们可以通过props来...
    99+
    2022-11-22
    组件通信 组件 Vue
  • Vue子组件接收父组件传值的方式有哪些
    这篇文章给大家分享的是有关Vue子组件接收父组件传值的方式有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。父组件代码&darr;<template>   &n...
    99+
    2023-06-29
  • vue父子组件间如何传值
    本文小编为大家详细介绍“vue父子组件间如何传值”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue父子组件间如何传值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。父组件传递方法首先,在Vue中父组件向子组件传...
    99+
    2023-07-06
  • Vue 通过this.$emit()方法子组件向父组件传值(步骤分享)
    目录子组件使用this.$emit()向父组件传值第一步 在父组件中引入子组件第二步 子组件向父组件传值子组件使用this.$emit()向父组件传值 首先必须在父组件中引用子组件,...
    99+
    2022-11-13
    vue子组件向父组件传值 vue this.$emit()组件传值
  • vue父子组件传值的原理是什么
    vue父子组件传值的原理是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。文件目录如下图,example.vue是父组件,exampleCh...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作