1) react-navigation v2 이상에서 뒤로 버튼을 사라지게하려면 :
navigationOptions: {
title: 'MyScreen',
headerLeft: null
}
2) 탐색 스택을 정리하려면 :
탐색하려는 화면에 있다고 가정합니다.
react-navigation 버전 v5 이상 을 사용하는 경우 navigation.reset
또는 CommonActions.reset
다음을 사용할 수 있습니다 .
navigation.reset({
index: 0,
routes: [{ name: 'Profile' }],
});
출처 및 추가 정보 : https://reactnavigation.org/docs/navigation-prop/#reset
또는:
navigation.dispatch(
CommonActions.reset({
index: 1,
routes: [
{ name: 'Home' },
{
name: 'Profile',
params: { user: 'jane' },
},
],
})
);
출처 및 추가 정보 : https://reactnavigation.org/docs/navigation-actions/#reset
이전 버전의 react-navigation :
v2-v4 사용StackActions.reset(...)
import { StackActions, NavigationActions } from 'react-navigation';
const resetAction = StackActions.reset({
index: 0,
actions: [
NavigationActions.navigate({ routeName: 'myRouteWithDisabledBackFunctionality' }),
],
});
this.props.navigation.dispatch(resetAction);
v1 사용NavigationActions.reset
3) Android의 경우 BackHandler를 사용하여 하드웨어 뒤로 버튼도 비활성화해야합니다 .
http://reactnative.dev/docs/backhandler.html
또는 후크를 사용하려는 경우 :
https://github.com/react-native-community/hooks#usebackhandler
그렇지 않으면 탐색 스택이 비어있는 경우 Android 하드웨어 뒤로 버튼을 누를 때 앱이 닫힙니다.