Sadece basit bir şey sadece handle.submit işlevinde this.state.validForm yazdırma gibi basit bir şey deniyorum, ancak bu.state.validForm erişmek için görünmüyor olabilir. İlk önce doğrudan bu işlevle denedim, ama boşuna. Tepki vermek için yeniyim.this.state null reaktres bileşeni içinde
import React, { Component } from 'react';
import TextInput from './TextInput';
class RequestForm extends Component {
constructor(props) {
super(props);
this.state = {validForm : "false"};
this.getInfoForm = this.getInfoForm.bind(this);
}
getInfoForm() {
return this.state.validForm;
}
handleSubmit(event) {
event.preventDefault();
console.log('submit values are');
console.log(event.target.src.value);
console.log(event.target.email.value);
console.log(this.state.validForm);
console.log(this.getInfoForm());
}
render() {
return (
<form onSubmit={this.handleSubmit}>
<TextInput
uniqueName="email"
name="email"
text="Email Address"
required={true}
minCharacters={6}
validate="email"
errorMessage="Email is invalid"
emptyMessage="Email is required"
/>
<TextInput
text="User"
name="User src"
required={true}
minCharacters={3}
validate="notEmpty"
errorMessage="Name is invalid"
emptyMessage="Name is required"
/>
<button type="submit">Submit</button>
</form>
);
}
}
export default RequestForm;
Olası yinelenen (http://stackoverflow.com/questions/29577977/react-ref- ve-setstate-with-es6) –
Ayrıca "handleSubmit" inizi "getInfoForm" ile yaptığınız gibi ön bağlama yapmayı da düşünün. – ffxsam