J'utilise le matériel ui v0.20.0 et je dois interdire la sauvegarde du mot de passe pour un utilisateur avec TextField. J'ai ajouté des accessoires à TextField autocomplete = 'nope' car tous les navigateurs ne comprennent pas autocomplete = 'off'. Il semble que la dernière version de Chrome 63 ne l'accepte pas. Parfois, cela ne fonctionne pas et parfois cela fonctionne. Je ne comprends pas pourquoi cela fonctionne si fort. Quand chrome demande d'enregistrer le mot de passe et je l'enregistre, et après cela, je veux modifier l'entrée, j'ai toujours ceci:
<TextField
name='userName'
floatingLabelText={<FormattedMessage id='users.username' />}
value={name || ''}
onChange={(e, name) => this.changeUser({name})}
// autoComplete='new-password'
/>
<TextField
name='password'
floatingLabelText={<FormattedMessage id='users.passwords.new' />}
type='password'
value={password || ''}
onChange={(e, password) => this.changeUser({password})}
autoComplete='new-password'
/>
Il semble que cela fonctionne dans Firefox (v57.0.4)
Pour désactiver la saisie automatique dans Material-ui TextField. ses travaux pour moi
<TextField
name='password'
autoComplete='off'
type='text'
...
/>
devrait être autoComplete = 'off'
autoComplete='off'
Cela semble avoir fonctionné pour moi (nous utilisons du matériel ui avec une forme redux)
<Textfield
inputProps={
{
autocomplete: "new-password",
form: {
autocomplete: "off",
}
}
/>
"new-password" fonctionne si l'entrée est type = "password" off "fonctionne si c'est un champ de texte normal enveloppé dans un formulaire
Fixé. Il suffit d'ajouter un champ de saisie réel au-dessus
https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion - MDN https://medium.com/paul-jaworski/turning- off-autocomplete-in-chrome-ee3ff8ef0908 - support testé sur Edge, Chrome (dernière version 63), Firefox Quantum (57.0.4 64-бит), Firefox (52.2.0) les faux champs sont une solution de contournement pour chrome/opéra remplissage automatique obtenant les mauvais champs
const fakeInputStyle = {opacity: 0, float: 'left', border: 'none', height: '0', width: '0'}
<input type="password" name='fake-password' autoComplete='new-password' tabIndex='-1' style={fakeInputSyle} />
<TextField
name='userName'
autoComplete='nope'
...
/>
<TextField
name='password'
autoComplete='new-password'
...
/>
Avec l'entrée Material UI, vous pouvez utiliser
autoComplete = "nouveau-mot de passe"
Vous aurez donc quelque chose comme cette entrée:
<TextField
autoComplete="new-password"
/>
Cela a été d'une grande aide par exemple pour éviter plus de styles du navigateur sur une page de connexion.
J'espère que cela aide les autres!
Je l'ai rencontré récemment. J'ai essayé tout ce que j'ai trouvé sur le Web, mais finalement le correctif qui a fonctionné pour moi était de faire ce qui suit.
À définir avec auto C omplete: 'new-password' sur les accessoires d'entrée comme ceci:
<TextField
label="Password"
className={classes.textField}
name="password"
inputProps={{
type:"password",
autoComplete: 'new-password'
}} />
Cela a fonctionné pour moi:
Chaque fois que vous souhaitez désactiver une saisie automatique pour le champ de mot de passe (également le champ ci-dessus), mettez-le simplement dans votre entrée de mot de passe:
<input type="password" name='any-filed-name-here-password' autoComplete='new-password' />
L'important est d'avoir le autoComplete='new-password'
Vous n'avez plus besoin de fournir autoComplete = 'off' pour le composant AutoComplete sur la branche principale. Il est ajouté par défaut.
Vérifiez ce fil pour plus de détails.