@ravshan01

Почему не всегда срабатывает автопроверка(отправка) формы на реакт?

Всем привет, делаю сайт на реакт, есть 2 проблемы.

1) Не всегда срабатывает отправка формы(если пустая), при автопроверке заполнения инпутов,
например:
нажимаю несколько раз, ничего не выходит, только потом срабатывает и выводит что надо заполнить поле

2) при фокусе инпута, если он пустой, курсор маленький, но после начала ввода он становится нормальным

5f072c5aafc94068170467.jpeg
5f072c67b7f6f390503427.jpeg

также использую редукс. код:
class Login extends Component{
	constructor(){
		super();

		this.submit = this.submit.bind(this);
		this.state = {
			load : false
		}
	}


	submit(e){
	       e.preventDefault();
                ...		
	}




	render(){
		return (

			<div className="form-wrap gradient-bg">
				<LoggedControl />
				<form onSubmit = {this.submit} ref={ elem => this._form = elem }>

					<div className="form-text">Вход</div>
					<div className="error" ref={ elem => this._error = elem }>  </div>

					<label>
						<input type="text" name="login" required />
						<i className="fa fa-fw fa-user"></i>
					</label>

					<label>
						<input type="password" name="password" required />
						<i className="fa fa-fw fa-lock"></i>
					</label>

					<Submit text="Войти" load={this.state.load} />

				</form>
			</div>
		)
	}

}

class Submit extends Component{

	shouldComponentUpdate(nextProps){
		if ( this.props.load == nextProps.load ) return false;
		return true;
	}


	render(){
		return(
			<div className="submit">

				<input type="submit" value={this.props.text} className={ this.props.load ? 'opacity-0' : '' />
				<i className={`fa fa-fw fa-spinner fa-spin ${ this.props.load ? 'opacity-1' : '' }`}></i>

			</div>

		)
	}

}
  • Вопрос задан
  • 44 просмотра
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы