serviceHTTPSCaError
состояние должно возвращать сообщение об ошибке или false
, а errorText должен быть errorText={this.state.serviceHTTPSCaError}
Я сделал пример, чтобы проверить адрес электронной почты
handleChangeServiceHTTPSCa(event) {
if (!event.target.value.match(/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/)) {
this.setState({
serviceHTTPSCa: event.target.value,
serviceHTTPSCaError: 'Email address is not vaild',
},()=>{
if(this.state.serviceHTTPSCa === ''){ // check if the input is empty
this.setState({ serviceHTTPSCaError: false})
});
} else {
this.setState({ serviceHTTPSCa: event.target.value,serviceHTTPSCaError: false });
}
}
При возврате рендера
<TextField
hintText="Email Address"
fullWidth={true}
value={this.state.serviceHTTPSCa}
onChange={this.handleChangeServiceHTTPSCa}
errorText={this.state.serviceHTTPSCaError}
type="text"
/>