J'ai un objet TextInput que je veux contenir ... lorsque l'utilisateur entre du texte au lieu d'afficher le texte saisi. Quel est le meilleur moyen de le faire?
<TextInput
style={{height: 40, borderColor: 'gray', borderWidth: 1}}
onChangeText={(text) => this.setState({input: text})}
/>
Quand cela a été demandé, il n'y avait pas moyen de le faire en mode natif, cependant cela sera ajouté à la prochaine synchronisation selon this pull request . Voici le dernier commentaire sur la requête pull - "Atterri en interne , sera sur la prochaine synchronisation "
Quand il sera ajouté, vous pourrez faire quelque chose comme ça
<TextInput secureTextEntry={true} style={styles.default} value="abc" />
Mai 2018 Version native 0.55.2
secureTextEntry = {true} fonctionne
mot de passe = {true} ne fonctionne pas
Je devais ajouter:
secureTextEntry={true}
De même que
password={true}
À partir de 0.55
Vous pouvez obtenir l'exemple et l'exemple de code sur le site officiel, comme suit:
<TextInput password={true} style={styles.default} value="abc" />
Référence: http://facebook.github.io/react-native/docs/textinput.html
Ajouter
secureTextEntry={true}
ou juste
secureTextEntry
propriété dans votre TextInput.
Exemple de travail:
<TextInput style={styles.input}
placeholder="Password"
placeholderTextColor="#9a73ef"
returnKeyType='go'
secureTextEntry
autoCorrect={false}
/>
J'utilise 0.56RC secureTextEntry = {true} avec password = {true} Alors seulement son fonctionnement est mentionné dans @NicholasByDesign
Un petit plus:
version = RN 0.57.7
secureTextEntry={true}
ne fonctionne pas lorsque la keyboardType
était "phone-pad"
ou "email-address"
Un objet TextInput doit inclure secureTextEntry = {true}. Notez que les documents de React indiquent que vous ne devez pas utiliser multiline = {true} en même temps, car cette combinaison n'est pas prise en charge.
Vous pouvez également définir textContentType = {'password'} pour permettre au champ de récupérer les informations d'identification du trousseau stocké sur votre mobile. Une autre façon de saisir des informations d'identification si vous disposez d'une entrée biométrique sur votre mobile pour insérer rapidement des informations d'identification. Tels que FaceId sur iPhone X ou une entrée tactile à empreinte digitale sur d'autres modèles d'iPhone et Android.
<TextInput value={this.state.password} textContentType={'password'} multiline={false} secureTextEntry={true} onChangeText={(text) => { this._savePassword(text); this.setState({ password: text }); }} style={styles.input} placeholder='Github password' />