<div v-if="isShowCc">
<div v-for="(item,index) in form.PointArr">
<i v-if="form.PointArr.length>1" @click="deletePoint(index)"></i>
<el-form-item label="点名称"
:rules="PointRules.name"
:prop="'PointArr.'+ index +'.name'">
<el-input v-model="item.name" maxlength="50"
placeholder="请输入点名称"></el-input>
</el-form-item>
<el-form-item label="地图选点"
:rules="PointRules.address"
:prop="'PointArr.'+ index +'.address'">
<el-input placeholder="请输入内容" v-model="item.address"></el-input>
</el-form-item>
</div>
<el-button @click="addPoint" type="primary">再添加一个点 </el-button>
</div>
data中的定义:
PointRules: {
name: [{required: true, message: '请填写名称', trigger: 'blur'}],
address: [{required: true, message: '请填写地址', trigger: 'blur'}]
},
1、isShowC判断是否显示,要用v-if判断,如果使用v-show,在表单校验时隐藏元素也会被判断。
2、:rules="PointRules.name"。PointRules需要在data中定义,name与当前el-form-item下的input的属性一致。
3、:prop="'PointArr.'+ index +'.name'"。PointArr是遍历的数组,name与当前el-form-item下的input的属性一致。遍历的数组后面和属性前面分别有一个“.”,注意不要丢掉。