У меня есть реагировать класс, который имеет следующий код:Переходя входное состояние вокруг в реакции
getInitialState: function(){
return {
results: false,
value: ''
};
},
handleClick: function(event) {
this.setState({ results: true });
event.preventDefault();
},
handleChange: function(event){
this.setState({value: event.target.value})
},
<input type="text" id="playerName" value={this.state.value} onChange={this.handleChange} placeholder="name" />
в другой ВЗАИМОДЕЙСТВУЕТ КЛАССА
у меня есть:
myFunc: function() {
this.setState({info: true})
let name = this.props.value;
console.log(name) --> returns undefined
},
Как я могу назвать быть равное имени, которое пользователь вводил, передавая его из одного класса реакции в другой
Могу отправить сообщение но я думал, что реквизит был способом передачи кода, который вам нужен в другом месте. this.state.value
также возвращает неопределенное
редактировать:
MyFunc здесь называют:
<input type="submit" value="I can play" onClick={() => this.myFunc()}/>
Вы должны связать '' this' в методе handleChange' явно, как это 'this.handleChange.bind (это)'. Попробуйте это и да напишите больше кода, если он все еще не работает, возможно, попробуйте Codepen, чтобы наложить на него весь код. –
@BasimHennawi Нет, не с 'createClass'. Это было бы проблемой, если бы OP использовал реактивные компоненты с классом. –
Как устанавливается 'this.props.value'? Вы можете показать компонент, который использует 'myFunc'? –