Je viens de commencer à apprendre React Native et j'ai couru ceci: J'ai créé un composant qui a un TouchableHighlight
dedans, et j'ai assigné une fonction de gestionnaire, mais il ne semble pas ça s'appelle. Voici mon élément:Le gestionnaire tactile n'est pas appelé avec React Native
import React, {Component} from 'react';
import {
Text,
View,
TouchableHighlight
} from 'react-native';
export default class Component1 extends Component<{}> {
componentWillMount() {
console.log("hi there");
this.setState({age: 22});
}
handlePress() {
this.setState(prevState => ({ age: prevState.age + 1 }));
console.log("updated age");
}
render() {
return (
<View>
<View>
<Text>
{this.props.name}
{"\n"}
{this.state.age}
</Text>
</View>
<View>
<TouchableHighlight onPress={() => this.handlePress}>
<View>
<Text>Become older</Text>
</View>
</TouchableHighlight>
</View>
</View>
);
}
}
Quand je tape le « devenir plus » rien de vue est connecté à la borne (j'utilise react-native log-android
Merci pour aider à :)
Merci :)! J'ai essayé les deux options et seulement le premier travaillé ( this.handlePress()}>), aucune idée pourquoi cela pourrait être? Je suis assez sûr que j'ai vu l'autre syntaxe utilisée aussi –
Il n'y a rien de mal avec la deuxième syntaxe, vous pouvez vérifier les docs, il a un exemple qui est le même que celui mentionné: https: //facebook.github .io/react-native/docs/touchablehighlight.html –