본문 바로가기
개발로그/ReactNative

<View> 의 onLayout 을 사용하면서 <NavigationContainer>와도 공존하기

by 그리너리디밸로퍼 2023. 2. 16.

<View> 의 onLayout  을 사용하면서 <NavigationContainer>와도 공존하기 

 

그야말로 좌충우돌 우당탕탕 좌절의 연속이다.  realm 을 사용하려 함으로서 시작되었다.  realm 을 초기화(open() )하려면 expo-splash-screen 이 필요했고 splash-screen이 종료되면 최상위 View 의 onLayout 에 realm 초기화 함수를 넣으라고 가이드에 되어있었다. 

 

그런데 난 최상위 컴포넌트가 NavigationContainer 인걸?!

그래서 View 로 감싸도 보고 바꿔도 보고 했는데 결국에 찾은 해결책은 이거다. 

    <NavigationContainer>
      <Navigator></Navigator>
      <View onLayout={onLayoutRootView}>
        <Text></Text>
      </View>
    </NavigationContainer>

NavigationContatiner 안에 아무것도 없는 View를 넣어두는 것. 

 

이게 올바른 방법인지는 나 혼자 공부하고 있어, 알 수는 없으나 어쨌든 다음으로 넘어갈 수 있게 되었다. 

 

728x90

댓글