Invalid prop: type check failed for prop "modelValue". Expected String | Number, got Date
时间: 2023-08-03 10:32:06 浏览: 173
2020-web前端-vue项目出错-[Vue warn]: Invalid prop: custom validator check failed for prop “index”.
5星 · 资源好评率100%
这个错误提示是因为 `modelValue` 属性期望的是 `String` 或 `Number` 类型的值,但是你传递给它的是 `Date` 类型的值。
通常情况下,我们使用 `v-model` 来绑定表单元素的值,而 `v-model` 默认情况下是会将表单元素的值转换为字符串类型的。但是,对于一些特定的表单元素,例如 `input[type="number"]` 和 `input[type="date"]`,它们的值不一定是字符串类型的,所以 `v-model` 绑定它们的值时需要特别注意。
针对这种情况,你可以通过在模板中显式地将 `date` 属性转换为字符串类型来解决这个问题,例如:
```html
<input type="date" v-model="formData.date" :value="formData.date.toISOString().slice(0, 10)" />
```
在这里,我们使用 `toISOString()` 方法将 `Date` 对象转换为 ISO 格式的字符串,然后使用 `slice()` 方法截取前 10 个字符,即日期部分的字符串,作为 `date` 属性的值传递给 `v-model`。这样就可以解决这个错误了。
阅读全文