在使用vue element-ui form表單渲染的時候,會遇到這樣的數據結構:vue
{ "title":''123455, "email":'123456@qq.com', "list": [ { "id": "quis consequat culpa ut pariatur", "name": "et quis irure dolore ullamco", "ompany": "sunt mollit", "address": "anim reprehenderit aliquip labore velit" }, { "id": "", "name": "laborum magna", "company": "mollit esse ipsum quis", "address": "cillum dolore ex ut" }, ] }
在遇到某個字段值好比list是個數組,下面多個字段值還須要繼續使用rules校驗時候,直接給list下面的字段綁定prop="對應的字段值",是不能校驗成功的,解決辦法有二:element-ui
一、在是數組的地方再套一個<el-form :model="當前子對象" v-for="遍歷list這個數組"></el-form>segmentfault
給list數組下的字段直接仍是綁定prop名稱爲本來的名稱就能夠;數組
示例代碼以下:數據結構
<el-form :model="item" v-for="(item,index) in dataFields.list :key="index"> <el-form-item label="name" prop="name" :rules="{ required: true, message: 'Required', trigger: 'blur' }"> <el-input placeholder="name" v-model="item.name"></el-input> </el-form-item> </el-form>
二、直接給list數組下對象的字段名稱綁定爲 數組下的名稱ui
示例代碼以下:spa
<div v-for="(item,index) in dataFields.list :key="index"> <el-form-item label="name" :prop="`list[${index}].name`" :rules="{ required: true, message: 'Required', trigger: 'blur' }"> <el-input placeholder="name" v-model="item.name"></el-input> </el-form-item> </div>
這裏list即爲上面對象中的數組,datafields是最外層對象。code
參考連接:orm