我想绘制一个反应组件列表。每个组件的道具各不相同,但是每个元素的道具都会被父项的道具覆盖。我尝试过类似的事情
render(){
let children=this.props.children
let dis;
if(Array.isArray(children)){
dis=[]
children.forEach(c=>{let l=Object.assign(c,Object.assign(c.props,this.props))
dis.push(l)})
}
return(
{dis}
)
}
}
但是出现了错误,该错误只支持只读。
答案 0 :(得分:0)
听起来您要尝试的是让父组件将其他设置注入要渲染的子代中。
在这里看看: https://stackoverflow.com/a/50786569/1541237
基本上,您将像这样渲染:
render() {
return (
React.Children.map(this.props.children, child =>
React.cloneElement(child, { ...this.props }));
);
}