如何在React / React-Native中对嵌套的参数进行类型检查>> [

问题描述 投票:0回答:1
我有一个名为data.messages的对象数组,我想在一个名为'Chat'的组件中进行类型检查:

Chat.propTypes = { data: PropTypes.shape({ messages: PropTypes.arrayOf({ createdAt: PropTypes.string.isRequired, id: PropTypes.string.isRequired, image: PropTypes.string, isTyping: PropTypes.bool, text: PropTypes.string.isRequired, user: PropTypes.shape({ firstName: PropTypes.string.isRequired, id: PropTypes.string.isRequired, }) }) }) }

但是,我收到以下错误消息:

警告:道具类型失败:组件的属性data.messagesChat在arrayOf内部具有无效的PropType表示法。

当我尝试执行以下操作时:

Chat.propTypes = { data: PropTypes.shape({ messages: PropTypes.array({ createdAt: PropTypes.string.isRequired, id: PropTypes.string.isRequired, image: PropTypes.string, isTyping: PropTypes.bool, text: PropTypes.string.isRequired, user: PropTypes.shape({ firstName: PropTypes.string.isRequired, id: PropTypes.string.isRequired, }) }) }) }

我收到以下错误消息:

警告:propType失败:不是直接调用PropTypes验证程序prop-types程序包支持。使用PropTypes.checkPropTypes()给他们打电话。

对象内部的属性类型与上面指定的属性类型精确匹配,因此该部分没有错误。

我有一个名为data.messages的对象数组,我想在一个名为'Chat'的组件中进行类型检查:Chat.propTypes = {data:PropTypes.shape({消息:PropTypes.arrayOf({...

javascript reactjs react-native react-proptypes
1个回答
1
投票
尝试

Chat.propTypes = { data: PropTypes.shape({ messages: PropTypes.arrayOf(PropTypes.shape({ createdAt: PropTypes.string.isRequired, id: PropTypes.string.isRequired, image: PropTypes.string, isTyping: PropTypes.bool, text: PropTypes.string.isRequired, user: PropTypes.shape({ firstName: PropTypes.string.isRequired, id: PropTypes.string.isRequired, }) })) }) }

© www.soinside.com 2019 - 2024. All rights reserved.