首页 > 其他 > 详细

Vue 组件之间传值(父子组件传值,vuex传值)

时间:2020-06-15 11:56:24      阅读:686      评论:0      收藏:0      [点我收藏+]

父子组件传值

在父组件中改变子组件里的数据

<!--在父组件中引用子组件,添加ref标识-->
<son ref="son"></son>
//父组件点击事件
clickFunc(){
    //若更新子组件里a的值
    this.$refs.son.a = ‘xx‘;
    //若调用子组件里b方法
    this.$refs.son.b();
}

一、父组件向子组件传递数据

在 Vue 中,可以使用 props 向子组件传递数据。

 父组件部分:

技术分享图片

在调用组件的时候,使用 v-bind 将 logo 的值绑定为定义的变量 logoMsg

技术分享图片

 

子组件部分:

技术分享图片

这是 header.vue 的 HTML 部分,logo 是在 data 中定义的变量。

如果需要从父组件获取 logo 的值,就需要使用 props: [‘logo‘]

技术分享图片

在 props 中添加了元素之后,就不需要在 data 中再添加变量了。

 

二、子组件向父组件传递数据

子组件主要通过事件传递数据给父组件

子组件部分:

技术分享图片

首先声明一个了方法 setUser,用 change 事件来调用 setUser。当<input>的值发生变化的时候,将 username 传递给父组件

技术分享图片

 在 setUser 中,使用了 $emit 来定义一个 事件transferUser,并返回 this.username

其中 transferUser 是一个自定义的事件,功能类似于一个中转, 通过这个事件把值username传递给父组件 

 

父组件部分:

技术分享图片

在父组件中,声明了一个方法 getUser,用 transferUser 事件调用 getUser 方法,获取到从子组件传递过来的参数 username

技术分享图片

getUser 方法中的参数 msg 就是从子组件传递过来的参数 username

 

三、兄弟组件传递数据

使用vuex来传值

Vue 组件之间传值(父子组件传值,vuex传值)

原文:https://www.cnblogs.com/yizhilin/p/13129706.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!