Передача объекта в родительское состояние от дочернего - PullRequest
0 голосов
/ 13 июня 2019

Можно ли как-то перенести объект в родительский реквизит из дочернего компонента?

1 Ответ

1 голос
/ 13 июня 2019

Вы можете передать функцию от родителя дочернему элементу, которая может установить состояние объекта в родительском элементе.

import React, { Component } from 'react';
import { render } from 'react-dom';

const Child = ({saveObj}) => (
  <div
    onClick={() => {
      saveObj({test: "test"})
    }}
  >
    Click to set obj
  </div>
) 

class App extends Component {
  constructor() {
    super();
    this.state = {
      obj : null
    };
  }

  render() {
    return (
      <div>
        Obj is: {JSON.stringify(this.state.obj)}
        <p>
          <Child saveObj={obj => {this.setState({obj})}} />
        </p>
      </div>
    );
  }
}

render(<App />, document.getElementById('root'));

Live Пример: https://stackblitz.com/edit/react-snivhc

...