개발자
안녕하세요. React-native에서 A 스크린에서 다른 스크린으로 이동한 뒤 다시 A 스크린으로 돌아왔을 때 화면이 업데이트 되어야 하는데 뒤로가기라서 그런지 리렌더링이 되지 않습니다. 뒤로가기시에도 화면을 리렌더링 할 수 있는 방법이 있을까요?
답변 1
안녕하세요. react-native-navigation 라이브러리에서 useIsFocused 라는 hook을 제공합니다. 이 라이브러리를 사용하시면 해당 스크린이 focus 되는 시점을 구분할 수 있어서 뒤로가기와 상관없이 원하시는 스크린을 떠났다 접근했을 때 동작을 수행할 수 있을 것 같습니다. 관련 링크 첨부합니다. https://reactnavigation.org/docs/use-is-focused/ 링크 예시대로 const isFocused = useIsFocused(); 로 isFocused 값을 가져온 뒤 useEffect(() => { // 원하는 로직 }, [isFocused]) 처럼 isFocused에 의존하는 useEffect 내부에 스크린으로 돌아왔을 때 업데이트하고 싶은 로직을 작성하시면 될 것 같습니다.
익명
작성자
2022년 11월 09일
라이브러리는 사용하고있는데 이런 기능도 제공하는군요. 답변 감사합니다.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!