我想将子项循环到我的React元素并传递自定义道具。这不是在每个this question的Typescript中编译的。那里的答案提到了两个解决方案,这两个解决方案都不适用于我:
当我使用child as ReactElement<any>
时,我得到:错误TS2304:找不到名称'ReactElement'。 (我使用@ types / react,但是如果重要的话,不要在当前文件中导入它?)
当我使用isValidElement
并实际传递道具时,我得到:
错误TS2345:类型'ReactElement&lt; {}&gt;'的参数不能分配给'ReactElement&lt; {ranking:any; }&GT;”。类型'{}'不能分配给'{ranking:any; }”。 类型“{}”中缺少属性“排名”。
以下是我的示例代码:
renderChildren() {
return React.Children.map(this.props.children, child => {
return React.cloneElement(child as ReactElement<any>, {
ranking: this.props.ranking
});
});
};
祝周日愉快!