Vue表单类的父子组件数据传递示例

本文介绍了Vue中父子组件数据传递的方法,包括通过自定义事件的v-model实现单向数据流,以及使用.sync修饰符进行双向绑定。同时强调了不能直接修改props,需要通过改变data中的值来更新父组件数据。此外,分享了作者的前端开发经验,提醒读者在面试和学习中注重问题的本质和技能的深入。
摘要由CSDN通过智能技术生成

给子组件的 input 事件绑定一个方法 changeName,每次执行这个方法的时候都会触发自定义事件 input,并且把输入框的值传递进去。

父组件通过 v-model 指令绑定一个值,来接收子组件传递过来的数据。但这样只是父组件响应子组件的数据,如果还要子组件响应父组件传递的数据,就需要给子组件定义一个props属性 value,并且这个属性必须是 value,不能写个其它单词。

v-model 其实就是一个语法糖,详情可以参考使用自定义事件的表单输入组件

2、传递引用类型数据

当子组件里的内容比较多时,比如子组件有多个表单元素,如果还像上面那样给每个表单元素绑定值,那就要写很多重复代码了。所以这个时候通常传递的是一个对象,传值的基本原理不变,不过写法上会有些不同。

还是先看代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

<!-- 父组件 parent.vue -->

 

<template>

  <div class="parent">

    <h3>问卷调查</h3>

    <child :formData.sync="form"></child>

    <div class="">

      <p>姓名:{ {form.name}}</p>

    </div>

  </div>

</template>

 

<script>

  import child from './child.vue'

 

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值