点击按钮后报错Invalid prop: type check failed for prop "model". Expected Object, got Array
时间: 2023-11-23 14:55:10 浏览: 109
解决vue props传Array/Object类型值,子组件报错的情况
5星 · 资源好评率100%
这个错误通常是因为在Vue项目中,父组件向子组件传递的属性类型与子组件中定义的属性类型不一致导致的。在你的代码中,错误信息显示期望获取一个对象,但实际上获取到的是一个数组。你需要检查你的代码,确保父组件中传递的属性类型与子组件中定义的属性类型一致。如果不一致,你需要修改子组件中定义的属性类型以匹配父组件中传递的属性类型。例如,如果父组件中传递的是一个数组,那么你需要将子组件中定义的属性类型改为数组类型。你可以参考以下代码示例:
父组件:
```
<template>
<div>
<my-component :my-prop="myArray"></my-component>
</div>
</template>
<script>
import MyComponent from './MyComponent.vue';
export default {
components: {
MyComponent
},
data() {
return {
myArray: [1, 2, 3]
}
}
}
</script>
```
子组件:
```
<template>
<div>
<p v-for="item in myProp" :key="item">{{ item }}</p>
</div>
</template>
<script>
export default {
props: {
myProp: {
type: Array,
default: () => []
}
}
}
</script>
```
阅读全文