vue中,input被封装成组件循环使用,如何与父组件传值

本文介绍了在Vue中如何处理一个被封装成组件并循环使用的input元素,详细阐述了如何通过v-model在子组件和父组件之间传递值。子组件需在外层包裹div,并使用props接收父组件传递的数组。父组件则可以监听子组件的变化,实现双向数据绑定。

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

代码

input子组件html:
注意:子组件 template 中不可以直接循环 需要在外层加个div包起来。。

<div class="bj-box">
	<div class="bj-item clearfix"
	     v-for="(item, index) in inputList"
	     :key="index">
	  <label>{{item.label}}</label>
	  <div class="item-r">
	    <div :class="['inp-div', item.class]">
	      <el-input type="text"
	                :placeholder="item.placeholder"
	                v-model="item.model"
	                :maxlength="item.maxlength"
	                show-word-limit>
	      </el-input>
	    </div>
	  </div>
	</div>
</div>	

v-model使用自己的item.model,props接收父组件传来的数组:
js:

props: {
    inputList: {
      type: Array,
      default () {
        return []
      }
    },
  }

父组件html:

<m-input :inputList="inputList" />

js:

inputList: [{
        class: 'telephone',
        label: '手机号码:',
        placeholder: '请输入您的手机号码',
        maxlength: '11',
      }, {
        class: 'weixin',
        label: '微信公众号:',
        placeholder: '请输入您的公众号(选填)',
        maxlength: '20',
      }]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值