В моем приложении React (с использованием responsestrap и начальной загрузки) у меня есть форма входа в систему, которая содержит два поля: адрес электронной почты и пароль.
<Input
type="email"
name="email"
id="emailInput"
onChange={this.handleInputChange}
value={this.state.email}
placeholder="email"/>
когда компонент выполняет рендеринг Chrome, автоматически заполняет поля, состояние электронной почты изменяется на то, что положил Chrome, и компонент перерисовывает.
Здесь, согласно некоторой логике в компоненте входа, состояние электронной почты может снова измениться на пустую строку this.setState({email:''})
.
Теперь пароль все еще там, но при нажатии на поле электронной почты (которое теперь пусто) всплывающее окно автозаполнения Chrome и показывает сохраненный электронный адрес / пароль и при нажатии, пароль заполняется в поле электронной почты вместо электронной почты .
при использовании стандартного тега HTML input
такой проблемы нет. Я не пробовал с другими библиотеками пользовательского интерфейса, но для responsestrap Input
.
У кого-нибудь был такой опыт?
Тип реактивной ленты
P.S.
handleInputChange = ({ target: { name, value } }: React.ChangeEvent<HTMLInputElement>) => {
this.setState((prevState) => ({ ...prevState, [name]: value }));
};