const { user, loading } = useUser();
const navigate = useNavigate();
const location = useLocation();
const from = location?.state?.redirectedFrom?.pathname || '/';
useEffect(() => {
if (user) {
navigate(from);
}
}, [from, navigate, user]);
이렇게하는거아닌가요?..
useUser는 서버와 통신후 유저 정보가져오는 훅입니당.
근데 계속 input이 보인후에 튕깁니다.ㅠ.ㅠ..
useEffect로하면 안되나 싶어서
if (user) {
return navigate(from);
}
이것만해줘봤지만, 에러가떠요
대충 JSX자식이없다 어쩌구 이러는데.. 이해가 가는 내용입니다.
콘솔찍어보니까
user가 처음에는 언디파인이떳다가 -> 유저정보로 변합니다.
하지만
{!loading && (
<Wrapper>
{socailLoginTemporaryTokenStatus.isNickname ? (
<SocialSignup />
) : (
<>
<Input type='email' placeholder='Email' />
<Input type='password' placeholder='Password' />
<SocialWrap>
<GoogleSocialAuth />
<RiKakaoTalkFill className='icon' />
<SiNaver className='icon' />
</SocialWrap>
</>
)}
</Wrapper>
)}
이렇게 조건문 처리를해줬기때문에 요소가 보이면 안된다 생각하는데도 계속 잠깐 인풋요소가 나왔다가 튕기네요..
아 로컬스토리지로 토큰을저장했으니까 그걸 가져와서 튕겨볼까?해서
똑같이했는데도 이슈 그대로 발생하고있습니다.ㅠ.ㅠ
아 리코일에 저장해서해볼까?했는데도 그대로 발생하고있구여..
저는 왜이렇게 멍청한걸까요? 어떻게하면좋을까요..