@EroticDeer

Можно ли как-то в Raect передать имя элемента состояния из потомка в родителя?

Можно ли как-то в Raect передать имя элемента состояния из потомка в родителя?

Родитель:

class Container extends Component {
	constructor() {
		super();
		this.state = {
			test: 1
		};
		this.buyEgg = this.buyEgg.bind(this);
	}


buyEgg(value) {
		this.setState({ value: 2 });
	}

	
	render() {
		return (
			<div>
				<TestShop buyEgg={this.buyEgg} test={this.state.test} />
			</div>
		);
	}


Ребенок:

class TestShop extends Component {
	constructor(props) {
		super();
		this.state = {
			
		};
	}

	render() {
		return (
			<div>
				<h1>{this.props.test}</h1>
				<button value="test" onClick={() => this.props.buyEgg('test')}>
					Click
				</button>
			</div>
		);
	}
}


т.е. нужна универсальная функция, которой передается имя элемента стейта и изменяяется на какое-то значение
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@bpGusar
*spoiler*
buyEgg(value) {
    this.setState({ [value]: 2 });
  }


если я правильно понял
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы