【发布时间】:2016-12-08 17:46:31
【问题描述】:
我传入一个对象,它是一个关联数组,作为道具。我事先不知道键(属性名),我只知道值应该是字符串或布尔值(例如)。如何使用 PropTypes 验证这一点?
编辑: 一个例子是:
{
"20161001": true,
"20161002": true,
"20161003": true,
"20161004": false,
"20161005": true,
"20161006": false
}
【问题讨论】:
-
请给你的关联数组举个例子
-
所以棘手的一点是您不允许编写动态道具类型,因为重点是您是声明性的。最好的办法是要求
PropTypes.arrayOf(PropTypes.object),然后在必要时进行手动验证。 -
@ZekeDroid
PropTypes.arrayOf不起作用,因为它不是真正的数组,它是一个简单的对象,用作具有命名索引的数组。密钥是在运行时创建的。
标签: javascript reactjs react-proptypes