私は疑問を持っています。この質問は、JavaScriptやReact-Nativeよりもさらに厳しいかもしれませんが、私は試してみます。私は次のコンポーネントを持っています:react-native - 引数として関数を呼び出す
export default class Body extends Component {
componentWillMount() {
this.refresh();
}
clickme() {
console.log('I have been pressed!!!!!');
}
refresh() {
this.props.populateGrid();
}
render() {
return (
<View style={styles.body}>
<Grid inGrid={this.props.grid} />
<Button
onPress={this.clickme}
title={'PressMe'}
/>
</View>
);
}
}
まず、this.clickme()をonPressに渡しました。それはうまくいかなかった。それは作業を開始したブレースを取り除いた後であった。どうして?私たちは通常、()を含む関数を呼び出しませんか?また時には、something = {()=> this.clickme()}の形式で渡す必要があります。なぜ/いつ?
ように我々は関数を呼び出します:
1. {this.clickme}
2. {this.clickme()}
3. {() => this.clickme()}
はありがとうございます。
ありがとう - 理にかなっています。私はそれについてもっと読むでしょう。 – Wasteland