我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Vue实现父子组件传值其实不难

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Vue实现父子组件传值其实不难

父传子

通过 propsprops 就是用来接收来自父组件的数据的。

下图是大致的示意图。

父传子示意图

代码实现

1.在父组件中引用子组件时,使用属性传值。

① 如果是简单的静态值可以不适用 v-bind<Child title="dataToChild" />

② 大多情况下时使用动态传值,使用 v-bind 即可。<Child :title="dataToChild" />

parent.vue

<template>
  <Child title="dataToChild" />
</template>
<script>
import Child from './child' //引入子组件
export default{
  components: { Child },
  data () {
    return {
      dataToChild: 'From Parent to Child'
    }
  }
}
</script>

2.子组件中使用 props 接收。

props 可以是对象或简单数组,并且可以对对象进行类型、默认值等高级配置

① 简单字符数组。就是简单列出要接收的数据的属性名,并不可以是对象数组。

props:[ 'data1', 'data2' ]

② 对象。

props:{ 
  data1:{
    type: String, 
    default: 'no data'
  },
  data2:{
    type: Number, 
    default: 0,
    required: true
  }
}

child.vue

<template>
  <div class="children">
    <div>来自父组件的值是:{{title}}</div>
  </div>
</template>

<script>
export default {
  props: {
    title: {
      type: String, //接收值得类型
      default: '父组件没传值' //配置默认值
    }
  },
  //或者可以写成简单数组 props: ['title'],
  data () {
    return {}
  }
}
</script>

父组件传值到子组件就是 vue 单向数据流的一般表现: 父级 prop 的更新会向下流动到子组件中,但是反过来则不行。

子传父

通过 v-on$emit

子传父

Vue中父子组件的关系可以总结为 prop 向下传递,事件向上传递。

父组件通过 prop 给子组件下发数据,子组件通过事件给父组件传递信息。

父子组件关系

代码实现

1.在父组件中把定义事件绑定到子组件。

parent.vue

<template>
  <div class="parent">
    <Child @child="getChildData" />
    <p>子组件传给父组件的值:{{dataFromChild}}</p>
  </div>
</template>

<script>
import Child from './Child'
export default {
  components: { Child },
  data () {
    return {
      dataFromChild: ''
    }
  },
  methods: {
  	
    getChildData (param) {
      this.dataFromChild = param
    }
  }
}
</script>

2.在子组件中触发父组件中自定义的函数并传递参数

child.vue

<template>
  <div class="child-parent">
    <input type="text" v-model="toParent" />
    <button @click="dataToParent">传值到父组件</button>
  </div>
</template>

<script>
export default {
  data () {
    return {
      toParent: 'From Child to Parent'
    }
  },
  methods: {
    dataToParent () {
      this.$emit('child', this.toParent)
    }
  }
}
</script>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Vue实现父子组件传值其实不难

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Vue实现父子组件传值其实不难

这篇文章主要介绍了Vue实现父子组件传值其实不难问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-03-24

Vue中父子组件如何实现传值

这篇文章主要介绍了Vue中父子组件如何实现传值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-01-28

vue如何实现子组件向父组件进行传值

这篇文章主要为大家展示了“vue如何实现子组件向父组件进行传值”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue如何实现子组件向父组件进行传值”这篇文章吧。子组件向父组件进行传值:父组件内设置
2023-06-17

vue如何实现父组件向子组件进行传值

这篇文章给大家分享的是有关vue如何实现父组件向子组件进行传值的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。父组件向子组件进行传值:在子组件绑定父的数据,子组件通过props接受参数。接下来我们通过一个例子,说明
2023-06-17

Vue父传子、子传父及非父子传值方式怎么实现

这篇“Vue父传子、子传父及非父子传值方式怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue父传子、子传父及非父子
2023-07-04

Vue实现父子组件传值的方法是什么

这篇文章主要介绍了Vue实现父子组件传值的方法是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue实现父子组件传值的方法是什么文章都会有所收获,下面我们一起来看看吧。父传子通过 props。props 就
2023-07-05

vue实现父子组件间传值的代码怎么写

今天小编给大家分享一下vue实现父子组件间传值的代码怎么写的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。先定义一个子组件,在
2023-07-04

vue父子组件间如何传值

本文小编为大家详细介绍“vue父子组件间如何传值”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue父子组件间如何传值”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。父组件传递方法首先,在Vue中父组件向子组件传
2023-07-06

uniapp组件传值的方法(父传子,子传父,对象传值)实战案例

现在的前端开发中基本上都是组件化开发的,下面这篇文章主要给大家介绍了关于uniapp组件传值(父传子,子传父,对象传值)的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
2023-03-01

vue中子组件怎么向父组件传值

vue中子组件怎么向父组件传值,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一,子组件主动触发事件将数据传递给父组件1,在子组件上绑定某个事件以及事件触发的函数子组件代码<
2023-06-20

vue父子组件传值不能实时更新的解决方法

Vue是一个以数据驱动、组件化的前端框架,其中组件化是Vue中较为重要的概念之一,组件之间的通信则成为Vue中较为普遍的需求,下面这篇文章主要给大家介绍了关于vue父子组件传值不能实时更新的解决方法,需要的朋友可以参考下
2023-05-20

编程热搜

目录