Claire Réagir Natif TextInput
De travail par le biais de la Redux AddTodo exemple à Réagir Natif. La première AddTodo exemple ci-dessous utilise l'état pour stocker les TextInput valeur et fonctionne très bien.
class AddTodo extends React.Component{
constructor(props){
super(props);
this.state = { todoText: "" };
}
update(e){
if(this.state.todoText.trim()) this.props.dispatch(addTodo(this.state.todoText));
this.setState({todoText: "" });
}
render(){
return(
<TextInput
value = {this.state.todoText}
onSubmitEditing = { (e)=> { this.update(e); } }
onChangeText = { (text) => {this.setState({todoText: text}) } } />
);
}
}
Mais, après quelques de la Redux exemples, le code suivant est beaucoup plus courte et aussi fonctionne sauf que le TextInput
value
n'est pas effacée après le dépôt de
let AddTodo = ({ dispatch }) => {
return (
<TextInput
onSubmitEditing = { e => { dispatch(addTodo(e.nativeEvent.text)) } }
/>
)
}
Est il possible que je peux effacer le InputText value de onSubmitEditing?
OriginalL'auteur Dave Pile | 2017-07-22
Vous devez vous connecter pour publier un commentaire.
Ajouter la réf pour votre TextInput, par exemple:
alors appel
this.textInput.clear()
pour effacer la valeur d'entréeJ'ai essayé sur iOS, mais il ne fonctionne pas. TextInput toujours garder l'ancienne valeur
J'ai essayé la version la plus récente de la RN (0.55.4) et il fonctionne toujours sur IOS.
Juste confirmé.
.clear()
Ne marche pas pour la nouvelle RN (0.55). Vous les gars ont trouvé un travail autour?Je confirme que
.clear()
simplement travailler sur Android, iOS ne fonctionne pas. Problème de lien: github.com/facebook/react-native/pull/18278, On peut utiliser ce module comme un travail autour de la question: github.com/agiletechvn/react-native-text-input-enhanceOriginalL'auteur Kawatare267
Il donnera la valeur par défaut en texte clair bouton.
OriginalL'auteur Aseem
En fonction des changements et des recommandations après Réagir 16.3, vous devez récupérer la ref à votre constructeur à l'aide de Réagir.createRef:
À la fonction constructeur:
this.myTextInput = React.createRef();
À rendre la fonction:
<TextInput ref={this.myTextInput} />
Et puis vous pouvez appeler
this.myTextInput.current.clear();
[1] https://reactjs.org/docs/refs-and-the-dom.html
Ne fonctionne pas pour réagir natif
OriginalL'auteur Marcio S Galli
Je suis en utilisant Natif de la base de
et voici comment j'ai fait travailler
alors à chaque fois que je veux effacer-je utiliser
référence https://github.com/facebook/react-native/issues/18843
dans réagissent 16 > il n'est pas nécessaire d'ajouter createRef dans le constructeur
OriginalL'auteur Fadi Abo Msalam
cela fonctionne pour moi
et
this.attendee.setNativeProps({ text: '' })
//Texte en clair après l'EntréeOriginalL'auteur Hansa Tharuka
Exemple de code suivant:
OriginalL'auteur Gurbela
Je fais ce code pour la compensation TextInput à Réagir Natif
OnSubmitEditing
vous pouvez consulter mon casse-croûte:
https://snack.expo.io/@andreh111/clear-textinput-onsubmitediting
Voici le code:
OriginalL'auteur Andreh Abboud