我在反应组件中使用道具类型。该组件具有一托data,其应该是这样的对象的数组:[{value: 'some string', id: 123}]。我想添加一个自定义 prop-type 函数,使dataif props.useCustomSuggestionsis成为必需false。我试过这样的事情:
data: (props) => {
if (!props.useCustomSuggestions && !props.data) {
return new Error('Data must be provided to use default suggestions');
} else if (props.data && typeof props.data !== 'object') {
return new Error(
'Data must be an array',
);
}
};
我相信这个工程验证,当阵列需要props.useCustomSuggestions的false,但它不请检查是否在对象data的格式是否正确。是否有另一种编写方法来验证数组由具有value字符串类型和id数字类型属性的对象组成?
我认为react中的customArrayProp文档可能是解决方案,但它没有传递整个 props 对象,所以我失去了data对useCustomSuggestions.
喵喔喔
慕斯709654
相关分类