type check failed for prop "model". Expected Object, got Array
时间: 2023-11-23 15:47:58 浏览: 44
当你在使用Vue的时候,如果在模板中使用了一个对象类型的属性(例如model),但是实际上绑定了一个数组,就会出现"type check failed for prop 'model'. Expected Object, got Array"这个错误。这个错误的原因是因为你的代码中尝试将一个数组绑定给一个对象类型的属性。
解决这个问题有两种方法:
1. 直接去掉:model="form",不需要校验。这样就不会再报错了。
代码示例:
```html
<el-form ref="form" label-width="100px">
<el-form-item label="设备名称">
<el-input v-model="form[0].value">{{form[0].value}}</el-input>
</el-form-item>
<el-form-item label="设备型号">
<el-input v-model="form[2].value" disabled>{{form[2].value}}</el-input>
</el-form-item>
</el-form>
```
2. 将:model="form"改为:model="{form}"。这样可以将数组包装成一个对象,然后再进行绑定。
代码示例:
```html
<el-form ref="form" label-width="100px" :model="{form}">
<el-form-item label="设备名称">
<el-input v-model="form[0].value">{{form[0].value}}</el-input>
</el-form-item>
<el-form-item label="设备型号">
<el-input v-model="form[2].value" disabled>{{form[2].value}}</el-input>
</el-form-item>
</el-form>
```