今天来分享一段代码,业务需求是这样的,要做一个分期付款的提交,但分期没有定固定的多少期,要让你随时能够添加,页面开始的时候要展示第一期的填空,随后才进行添加
我是这样做的
vue组件
<el-form :model="payment"
:rules="rules"
hide-required-asterisk>
<!-- 分期付款 -->
<el-form-item label="分期付款"
class="aging">
<br>
<el-form-item
label="乙方(一期款含定金)"
:rules="rules.proxyPerson">
<el-input v-model="payment.firstPayment"
@blur="refunds"
placeholder="请输入一期款(含定金)">
</el-input>
</el-form-item>
<el-form-item
v-for="(domain, index) in payment.domains"
:label="'乙方('+domain.code+'期款)'"
:key="domain.key"
:prop="'domains.' + index + '.firstPayment'"
:rules="rules.proxyPerson">
<el-input v-model="domain.firstPayment"
:data-content = domain.code
@blur="refund"
:placeholder="'请输入'+domain.code+'期款'">
</el-input>
</el-form-item>
<!-- 添加按钮 -->
<div class="newcrea" @click="button">添加</div>
</el-form-item>
</el-form>
在data内定义的值
/** 分期还贷 */
payment:{
// 一期
firstPayment:"",
// 二期开始
domains: []
},
最后的添加事件
button() {
this.payment.domains.push({
firstPayment: "",
// 第几期
code:this.payment.domains.length + 2
});
}
最后展示的结果
勉强能看,功能正常,谁有更好的办法欢迎来留下言