Programing/React, React Native

[React Native] onPress가 자동실행되는 문제

hye3193 2024. 6. 26. 15:53
<TouchableOpacity
    onPress={navigation.replace('Main')}>
    <Text>Login</Text>
</TouchableOpacity>

위와 같이 코드를 작성했는데 TouchableOpacity 컴포넌트를 클릭하지 않았는데도 자꾸 Main 화면으로 이동했다

 

onPress의 prop에 바로 명령문을 넣어버리면 그냥 실행이 되어버리기 때문에 반드시 함수 형태로 전달해야 한다

 

<TouchableOpacity
    onPress={() => navigation.replace('Main')}>
    <Text>Login</Text>
</TouchableOpacity>

함수로 prop을 전달해 주면 해결된다