2016-07-30 5 views
3

onPressメソッドに関数を追加しましたが、この関数はアプリケーションのロード時に自動的にトリガーされます。私は何か間違っているのですか?onPressがロード時に呼び出されました

<TouchableHighlight onPress={this.showMenu()}> 
    <View></View> 
</TouchableHighlight> 

showMenu(){ 
    this.state.showMenu = true; 
} 

答えて

5

あなたは間違っています。メソッドはonPressにのみバインドする必要があります。しかし、あなたはそれを呼んでいます。あなたが実際たonPressディレクティブ内から関数を実行している

たonPress = {this.showMenu.bind(本)}

+1

これは私のためには機能しませんでしたが、これは:onPress = {()=> this.showMenu()} – Greg

+0

も有効です。 –

1

としてたonPressを変更します。

あなたは括弧なし

onPress={this.showMenu} 

を使用する必要があり、関数は、ユーザーがそれをトリガした場合にのみ、読み込み時に誘発しません。

+1

私はこの頻繁にどれくらいの頻度で私を訪ねるのか信じられません。 :) – Joe

関連する問題