ReactElementsの複製

注意: cloneWithPropsは非推奨です。 代わりに、React.cloneElementを使用して下さい。

稀に元の要素から異なるプロパティを持つReact要素の複製を作成したいようなケースがあります。 この1つの例として、this.props.childrenとそれらの異なるプロパティの描画を渡された要素を複製するという方法があります。

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')
);

cloneWithPropskeyまたはrefを複製された要素に移しません。 classNamestyleのプロパティは自動的にマージされます。

 Back to top

© 2013-2017 Facebook Inc.
Documentation licensed under CC BY 4.0.

このページは、ページトップのリンク先のReact内のページを翻訳した内容を基に構成されています。 下記の項目を確認し、必要に応じて公式のドキュメントをご確認ください。 もし、誤訳などの間違いを見つけましたら、 @tomofまで教えていただければ幸いです。

  • ドキュメントの情報が古い可能性があります。
  • "訳注:"などの断わりを入れた上で、日本人向けの情報やより分かり易くするための追記を行っている事があります。