Comment puis-je faire réagir le rendre?
<input
id={field.name}
className="form-control"
type="text"
placeholder={field.name}
autocomplete="off"
{...field}/>
Capital "C" autoComplete
. Ceci est mentionné dans la documentation de React:
https://facebook.github.io/react/docs/tags-and-attributes.html
Vous devriez mettre:
autoComplete="new-password"
Cela supprimera la saisie semi-automatique
Si vous avez lu la bonne réponse et que vous rencontrez toujours ce problème (en particulier dans Chrome), bienvenue au club ... alors vérifiez comment je l'ai accompli:
<form autoComplete="new-password" ... >
<input name="myInput" type="text" autoComplete="off" id="myInput" placeholder="Search field" />
</form>
Remarques
<FormControl/>
de React-Bootstrap (au lieu de <input/>
)Selon Documentation Mozilla , vous devez définir une valeur non valide pour désactiver réellement l'auto-complétion. Dans certains navigateurs, les suggestions de saisie semi-automatique sont toujours données même si l'attribut est désactivé.
Cela a fonctionné pour moi (react-bootstrap):
<FormControl
value={this.state.value}
autoComplete="nope"
{...props}
/>
autoComplete = "none" - fonctionne pour moi.
Je l'ai résolu avec une seule ligne:
Si vous utilisez la méthode recommandée avec "changeHandler ()" et l'état des composants, insérez simplement:
changeHandler = (e) => {
if (!e.isTrusted) return;
... your code
}
Plus d'infos sur ce changeHandler () - Thing:
https://reactjs.org/docs/forms.html#controlled-components