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