组件优化的两三事(二):input块组件优化

本文探讨在Vue组件优化过程中,如何处理input块组件的优化,尤其是答案获取的问题。通过使用v-model,实现了子组件向父组件高效地传递值,简化了原本需要通过$emit和特定事件触发的流程。文章提供了父组件和子组件的示例代码,阐述了v-model在自定义组件中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

组件优化的两三事(二):input块组件优化

最近在写一个动态表单的组件,可见文章 vue: 动态表单实现(单问题线)
在写该组件时,我在开始所想实现的的是每个组件达到最小块,再将块组合到表单中。但在实现时,若我把input封装成一个组件,页面实现是没有问题的,但在该组件的答案获取确实一个极大的问题。

关于子组件向父组件传值,我们最通常用的也是最先想到的就是使用$emit,但这首先有个前提是子组件有个交互事件来触发,后父组件有个地方可以存值。

我最初想到的的方法:
首先我们说的input组件是有一个至多个input组成。
我们将组件中的每个input加上change或blur事件,当出发事件时,要获取整个组件的所有input值,传递给父组件,父组件拿什么变量来存呢?就是要父组件通过prop提前告诉子组件该变量名,子组件在告诉父组件时,就需要把变量名在告诉会回给父组件

这是一个比较麻烦的流程,vue有一个方法可以稍微简化一点,就是使用v-model:
关于该方法,其实在vue教程文档中已明细讲述:自定义组件的-v-model

下面是我的个人理解与使用:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值