【发布时间】:2019-04-06 15:22:58
【问题描述】:
我有一个像下面这样的组件层次结构(来源),我的要求是,在渲染时想在某些属性上将其转换为Target,这里我假设为flag
来源:
<Parent>
<Xyz flag={false}/>
<One flag={true}/>
<Two flag={true}/>
<Three flag={true}/>
</Parent>
目标:
<Parent>
<Xyz>
<One />
<Two />
<Three />
</Xyz>
</Parent>
我的做法:
在Parent的侧面渲染中
render() {
const xyz = this.props.children.filter((children) => !children.props.flag);
const kids = this.props.children.filter((children) => children.props.flag);
const clonedXyz = React.cloneElement(xyz, [{...props}], [...kids]);
return(
<div>
{clonedXyz}
</div>
);
}
在反应 v15.x 中抛出错误预期的类/函数但得到 undefined
【问题讨论】:
-
这听起来像是XY problem,如果您退后一步并解释您是如何达到这个(相当奇怪的)要求的,它可能会帮助我们和您更多。
标签: javascript reactjs react-redux