Invalid prop: type check failed for prop "defaultCheckedKeys". Expected Array, got Function
时间: 2023-11-14 19:02:15 浏览: 65
Invalid prop: type check failed for prop "defaultCheckedKeys". Expected Array, got Function 是因为你在传递给子组件的defaultCheckedKeys属性的类型不符合预期。根据你提供的代码,该属性的类型应该是Array,但你传递了一个Function。为了解决这个问题,你需要将defaultCheckedKeys属性的类型改为Function,或者将传递给它的值改为一个Array。
解决方法:
1. 将defaultCheckedKeys属性的类型改为Function,以匹配传递给它的值。
2. 将传递给defaultCheckedKeys属性的值改为一个Array,以匹配其预期的类型。
相关问题
Invalid prop: type check failed for prop thDataArr. Expected , got Array
当在Vue项目中通过Props属性向子组件传递值时,如果传递的值的类型与子组件中定义的类型不匹配,就会出现Invalid prop: type check failed for prop的错误信息。在这个错误信息中,会提示期望的类型和实际传递的类型不匹配。例如,当传递一个数组给一个期望接收对象类型的props时,就会出现类似于Invalid prop: type check failed for prop thDataArr. Expected Object, got Array的错误信息。
解决这个问题的方法是,在父组件中传递给子组件的值的类型必须与子组件中定义的类型相匹配。如果子组件中定义的类型是对象,那么在父组件中传递给子组件的值也必须是一个对象。如果子组件中定义的类型是数组,那么在父组件中传递给子组件的值也必须是一个数组。
以下是一个解决这个问题的例子:
假设子组件中定义了一个props,期望接收一个对象类型的值:
```javascript
props: {
person: Object
}
```
在父组件中,如果传递一个数组给这个props,就会出现Invalid prop: type check failed for prop的错误信息:
```javascript
<template>
<div>
<child-component :person="['John', 'Doe']"></child-component>
</div>
</template>
```
正确的做法是传递一个对象给这个props:
```javascript
<template>
<div>
<child-component :person="{firstName: 'John', lastName: 'Doe'}"></child-component>
</div>
</template>
```
Invalid prop: type check failed for prop "treeListObj". Expected Array, got Object
在Vue项目中,当我们通过Props属性向子组件传递值时,有时会遇到"Invalid prop: type check failed for prop"的错误信息,其中会明确告诉我们期望的类型和实际传递的类型不匹配。根据您提供的引用内容,我们可以看到在子组件中,roleList变量的类型被定义为对象,而在父组件中传递给子组件的roleList变量的类型是数组,所以出现了错误。为了解决这个问题,您需要修改子组件的Props属性中的roleList变量的类型为数组,并设置一个默认值。具体代码如下:
```javascript
export default {
props: {
roleList: {
type: Array, // 将类型修改为数组
default: () => [] // 设置一个默认值
}
}
}
```
通过这样的修改,我们就能够解决"Invalid prop: type check failed for prop"的错误,确保父组件传递给子组件的roleList变量的类型和子组件中的类型一致。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [Vue报错:Invalid prop: type check failed for prop “roleList“. Expected Object, got Array 解决方法](https://blog.csdn.net/qq_41782425/article/details/132202943)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]