效果图:
基础数据为一个数组,点击添加后判断之前数据中是否有空,有空不可以添加,没空值则向数组中添加一个新得对象:
html:
<div class="rechargeSetCont">
<div v-for="(item,index) in addParamList" :key="index" style="margin-bottom: .3rem">
<div>
<div class="rechargeSetContTitle">
<div>
充值优惠 {{index+1}}
</div>
<div v-if="index!=0"> //删除按钮,第一个不能删除
<img @click="deleteIndex(item, index)" src="https://file.zhilianiot.com/static/offline_merchant/20210914/20210915154435.png" alt="">
</div>
</div>
<div class="rechargeSetCont_1">
<div>
充值金额
</div>
<div>
<van-field v-model="item.rechargeMoney" type="digit" placeholder="请输入充值金额" maxlength="6" input-align="center" />
</div>
</div>
<div class="rechargeSetCont_1">
<div>
赠送金额
</div>
<div>
<van-field v-model="item.giveMoney" type="digit" placeholder="请输入赠送金额" maxlength="6" input-align="center" />
</div>
</div>
</div>
</div>
<div class="rechargeSetCont_3" @click="clickAddRecharge">
<span>添加充值优惠</span>
</div>
</div>
javaScript部分:
data () {
return {
addParamList: [
{
rechargeMoney: '',
giveMoney: ''
}
]
}
},
/**
* 添加充值优惠
*/
clickAddRecharge () {
// eslint-disable-next-line no-unused-vars
let ifTrue = true
this.addParamList.forEach(item => {
// eslint-disable-next-line eqeqeq
if (item.rechargeMoney == '' || item.giveMoney == '') {
Toast('请完善金额')
ifTrue = false
}
})
if (ifTrue) {
this.addParamList.push({
rechargeMoney: '',
giveMoney: ''
})
}
},
/**
* 删除
*/
deleteIndex (item, index) {
this.addParamList.splice(index, 1)
},
样式就不粘贴了,也都会,希望能给你带来帮助!