gpt4 book ai didi

reactjs - 在 react 中将 Proptypes.shape 传递给 Proptypes.arrayOf

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

我在单独的文件中创建了两个模型 State 和 City。该州的进口城市。

State 中可以包含一系列城市。

下面的代码工作正常。

State.js

let State = PropTypes.shape({
name: React.PropTypes.string,
cities: PropTypes.arrayOf(PropTypes.shape(City))
});

City.js

let City = PropTypes.shape({
name: React.PropTypes.string,
population: PropTypes.number
});

但是,当我将城市重写为

let State = PropTypes.shape({
name: React.PropTypes.string,
cities: PropTypes.arrayOf(City)
});

它给了我警告。

摘要:

城市:PropTypes.arrayOf(PropTypes.shape(City)) 有效。

城市:PropTypes.arrayOf(City) 没有。

它给了我以下警告:

警告:propType 失败:组件 Xx 的属性 xx 在 arrayOf 内具有无效的 PropType 表示法。检查Yy的渲染方法。

我的问题是,City是一个Proptypes.shape,那么为什么我需要再次提及Proptypes.shape(City) Proptypes.arrayOf

最佳答案

在您的代码中:

let City = PropTypes.shape({
name: React.PropTypes.string,
population: PropTypes.number
});

您使用的是哪个版本的 React?您正在从 React.PropTypes 和 PropTypes 引用 PropTypes。您如何导入 PropType?您正在使用 prop-types 包吗?

我正在使用类似的场景,它对我有用。你的渲染是什么样的?为 Prop 提供的数据是什么?

对我来说,以下绝对有效:

cities: PropTypes.arrayOf(City)

关于reactjs - 在 react 中将 Proptypes.shape 传递给 Proptypes.arrayOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41761135/

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