J'ai essayé de créer un bouton qui affiche un message sur une zone d'alerte à l'aide du code suivant: Cependant, cliquer sur "Ignorer" texte ne déclenche pas la touche Toutes les parties du code attendent app.js: p> code> fonction. La seule façon dont j'ai pu déclencher la fonction était lorsque j'ai supprimé la fonction fléchée de la classe ONPRESS.
ONPRESS = {Ceci.ButtonClicked ()} code>
Mais cela entraîne une fonction pour ne être déclenchée que lorsque l'application commence d'abord.
Je ne suis pas sûr de ce que je fais mal. p>
6 Réponses :
Essayez ceci
Semblable à la flèche, ne déclenche toujours pas la fonction
Essayez de modifier votre code de la manière suivante: ou à des fins de test le branchant directement dans le olfress code>: p>
De nombreuses réponses dans cet aliment sont vraiment censées travailler. Êtes-vous sûr de vous référencer à votre fonction correctement? Pouvez-vous obtenir une sortie appropriée si vous console.log (this.buttonClicked) code>?
Je suis d'accord mais je ne sais pas pourquoi cela ne fonctionne pas. Même ONPRESS = {() => console.log ("Cliquez sur")} ne fonctionne pas
Si cela ne fonctionne pas, vous devez vous assurer que c'est cet objet touchable que vous essayez d'accéder à et appuyez sur. Si cela ne fonctionne pas, cela signifie que vous pouvez appuyer sur autre chose
Dans ce cas, vous devez modifier la fonction que vous déclenchez via la buttonClicked() {
return alert("clicked")
}
<TouchableOpacity onPress={this.buttonClicked} style={styles.skip}> <Text>Skip</Text> </TouchableOpacity> Hope it will be work for you.
Voir ci-dessous l'exemple
import * as React from 'react'; import { Button, View, Text, TouchableOpacity } from 'react-native'; class App extends React.Component { buttonClicked = () => { return alert('clicked'); }; render() { return ( <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}> <TouchableOpacity onPress={this.buttonClicked} style={styles.skip}> <Text>Skip</Text> </TouchableOpacity> </View> ); } } const styles = { skip: { width: '90%', padding: 10, backgroundColor: 'green', }, }; export default App;
Le problème était le "code> absolu code> changeant qui a résolu le problème. p>
Est-ce que cela répond à votre question? Stackoverflow.com / Questions / 60557745 / ...
@keikai Malheureusement, non.
Indiquez encore plus de détails comme constituent-il un composant fonctionnel ou une composante de classe. Si possible, partagez le code complet pour le composant