gpt4 book ai didi

javascript - React PropTypes 导入类。 Prop 类型无效

转载 作者:行者123 更新时间:2023-12-03 03:08:12 24 4
gpt4 key购买 nike

我有几个在许多组件中使用的大型对象,因此我为每个大型对象创建了一个 proptypes 文件,如下所示:

PropTypes/PropLargeObject.js 

其中包含 从“prop-types”导入 PropTypes;

const PropLargeObject =
PropTypes.shape({
id: PropTypes.number.isRequired,
name: PropTypes.string.isRequired,
items: PropTypes.ArrayOf(PropTypes.Shape({
itemId: PropTypes.number.isRequired,
itemName: PropTypes.string.isRequired
}))
});

export default PropLargeObject;

我在组件中使用该对象,如下所示:

import {PropLargeObject} from "./PropTypes/PropLargeObject";

Component.propTypes = {
LargeObject: {PropLargeObject}
}

它向我发出警告 Prop 类型“PropLargeObject”无效,它必须是一个函数,通常来自 React.PropTypes。我在这里做错了什么?

最佳答案

删除不必要的花括号:

import PropLargeObject from "./PropTypes/PropLargeObject"; // PropLargeObject is the default export

Component.propTypes = {
LargeObject: PropLargeObject // PropLargeObject is a PropTypes.shape function. Don't wrap with an object
}

您甚至可以将其短路一点:

import LargeObject from "./PropTypes/PropLargeObject"; // you can assign whatever name you want to default imports

Component.propTypes = {
LargeObject
}

关于javascript - React PropTypes 导入类。 Prop 类型无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47071816/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com