[英]passing props to childrens using React.cloneElement
你可以这样做
<div>
<MyComponent ...this.props/>
</div>
将道具传递给MyComponent,但是如果要将MyComponent作为孩子,则必须使用
<div>{React.cloneElement(this.props.children, this.props)}</div>
有没有替代cloneElement的选择? 我正在使用babel,我尽量不要以较旧的方式编写。
props对象是只读的,这意味着类似this.props.children[0].props = {...}
将无法工作。 您必须使用React.cloneElement
。
https://facebook.github.io/react/docs/components-and-props.html#props-are-read-only
React非常灵活,但是它有一个严格的规则:
就其道具而言,所有React组件都必须像纯函数一样工作。
如果您有阅读和操纵其孩子的道具的组件,则该孩子可能不再纯洁。 因此,您需要克隆一个新的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.