使用cloneWithProps克隆React元素

时间:2015-08-29 05:21:16

标签: reactjs

以下代码来自React tutorial

 funcThatTakesAString(strconv.FormatUint(uint64(classId), 10))

var _makeBlue = function(element) { return React.addons.cloneWithProps(element, {style: {color: 'blue'}}); }; var Blue = React.createClass({ render: function() { var blueChildren = React.Children.map(this.props.children, _makeBlue); return <div>{blueChildren}</div>; } }); React.render( <Blue> <p>This text is blue.</p> </Blue>, document.getElementById('container') ); 如何运作?

React.Children.map(this.props.children, _makeBlue)被赋予一个带有参数_makeBlue的函数,但它似乎没有传递给它的任何元素。

1 个答案:

答案 0 :(得分:-1)

在这一行:

var blueChildren = React.Children.map(this.props.children, _makeBlue);

this.props.children包含传递给_makeBlue的元素 - 或者更确切地说是组件实例。对于示例,this.props.children将包含一个子项:<p>This text is blue.</p>