2017-11-29 8 views
2

私は学校のためのプロジェクトに取り組んでいます。確かに私はJavaScriptに関して初心者です。私はReact Navigation tutorialでconst型を使用する理由を理解していません。React Nativeでなぜconst型が使用されているのですか?const {navigate} = this.props.navigation ;?

class HomeScreen extends React.Component { 
    static navigationOptions = { 
    title: 'Welcome', 
    }; 
    render() { 
    const { navigate } = this.props.navigation; 
    return (
     <View> 
     <Text>Hello, Chat App!</Text> 
     <Button 
      onPress={() => navigate('Chat')} 
      title="Chat with Lucy" 
     /> 
     </View> 
    ); 
    } 
} 

だから、私の質問は:あなたは定数変数を作成したいときconst型が使用されているconst { navigate } = this.props.navigation;

+0

どうしてですか? 'navigate'関数は決して変更されません。これは単純な略語なので、完全な識別子ではなく 'navigate( 'Chat')'と書くことができます。 – cmbuckley

答えて

3

constキーワードに使用されている理由を特定したり、重要な理由があります。定数は、おそらく使用されている変数と似ていますが、変更できない点が異なります。

コンポーネントのrenderメソッド内で変数が変更されていないため、ここで使用されています。 propsが変更されると、コンポーネントが再レンダリングされ、変数が再作成されます。

+1

ありがとう、このReact Native Stack Navigatorの例では、const型とvar型のどちらかの理由がありますか? –

+1

@ChristopherReyes 'render'メソッドを構築するときに' navigate'を誤って上書きしたくないので、ここでは 'const'を使います。これが、タイプシステム(SwiftやTypeScriptのような言語)が素晴らしい理由です! –

+0

ありがとう!それは今明らかですが、この答えは理解するのに役立ちます。 –

関連する問題