Toru Kobayashi
10 years ago
1 changed files with 6 additions and 6 deletions
@ -1,23 +1,23 @@ |
|||
--- |
|||
id: clone-with-props |
|||
title: Cloning Components |
|||
title: Cloning ReactElement |
|||
permalink: clone-with-props.html |
|||
prev: test-utils.html |
|||
next: update.html |
|||
--- |
|||
|
|||
In rare situations a component may want to change the props of a component that it doesn't own (like changing the `className` of a component passed as `this.props.children`). Other times it may want to make multiple copies of a component passed to it. `cloneWithProps()` makes this possible. |
|||
In rare situations a element may want to change the props of a element that it doesn't own (like changing the `className` of a element passed as `this.props.children`). Other times it may want to make multiple copies of a element passed to it. `cloneWithProps()` makes this possible. |
|||
|
|||
#### `ReactComponent React.addons.cloneWithProps(ReactComponent component, object? extraProps)` |
|||
#### `ReactElement React.addons.cloneWithProps(ReactElement element, object? extraProps)` |
|||
|
|||
Do a shallow copy of `component` and merge any props provided by `extraProps`. The `className` and `style` props will be merged intelligently. |
|||
Do a shallow copy of `element` and merge any props provided by `extraProps`. The `className` and `style` props will be merged intelligently. |
|||
|
|||
> Note: |
|||
> |
|||
> `cloneWithProps` does not transfer `key` to the cloned component. If you wish to preserve the key, add it to the `extraProps` object: |
|||
> `cloneWithProps` does not transfer `key` to the cloned element. If you wish to preserve the key, add it to the `extraProps` object: |
|||
> |
|||
> ```js |
|||
> var clonedComponent = cloneWithProps(originalComponent, { key : originalComponent.key }); |
|||
> var clonedElement = cloneWithProps(originalElement, { key : originalElement.key }); |
|||
> ``` |
|||
> |
|||
> `ref` is similarly not preserved. |
|||
|
Loading…
Reference in new issue