인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

Joy Lee님의 프로필 이미지
Joy Lee

작성한 질문수

Slack 클론 코딩[실시간 채팅 with React]

DM 목록 만들기

/api/users 데이터 체크

작성

·

263

0

안녕하세요 강사님 

userData 확인하는 부분에 대해 문의드립니다.

const { data: userData } = useSWR('api/users', fetcher);
  const { data: channelData } = useSWR<IChannel[]>(
    userData ? `/api/workspaces/${workspace}/channels` : null,
    fetcher
);

모달이나 채팅 컴포넌트 등 만들때 위처럼 userData가 있으면 channelData를 가져오도록 user 데이터가 있는지 매번 확인을 하던데

export const WorkspaceLayout = () => {
  const { data } = useSWR('/api/users', fetcher);
  const navigate = useNavigate();

  useEffect(() => {
    if (!data) navigate('/login');
  }, [data, navigate]);

  return (

workspace  레이아웃에  userData가 없으면 login 페이지로 가도록 하는 코드가 있는데 굳이 매번 확인을 해야하는지 궁금해서요!

workspace페이지가 보인다 =  user가 있다 

라고 볼 수 있으니 컴포넌트 생성시 user가 있으면 출력~~ 하는 방식은 생략해도 괜찮은가요? 아니면 혹시모를 상황을 위해 user값을 항상 확인하고 데이터를 출력하는게 맞는건지 궁금합니다.

 

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

저거 유저데이터가 없는데 요청보내면 401 에러가 떠서 에러 발생시키지 않기 위해 체크하는 겁니다.

Joy Lee님의 프로필 이미지
Joy Lee

작성한 질문수

질문하기