personDetil

nujinging·2023년 11월 30일
0

FeelvieAct

목록 보기
6/10
post-thumbnail

https://feelvieact.netlify.app/person/1299351

useEffect(() => {
  async function fetchApi() {
    try {
      setFilmoLoading(true);
      await dispatch(movieActions(params.type, params.id));

      // 배우 정보
      const detail = await movieApi.person(params.id);
      setDataUrl(detail.data);

      // 배우 SNS
      const social = await movieApi.social('person', params.id);
      setSocialUrl(social.data)

      // 배우 필모그래피
      const art = await movieApi.personArt(params.id, typeTabs);

      // 배우 필모그래피 정렬
      const art_list = art.data.cast.sort((a, b) => {
        const dateA = a.release_date || a.first_air_date;
        const dateB = b.release_date || b.first_air_date;
        if (dateA && dateB) {
          return new Date(dateB) - new Date(dateA);
        }
        return 0;
      });
      setArtUrl(art_list);
    } catch (error) {
      console.log(error);
      setError(error);
    } finally {
      setFilmoLoading(false);
      setLoading(false);
    }
  }

  fetchApi();
}, [typeTabs, params.id]);

/* fecthApi 비동기 작업이 완료되고 난 뒤에 - ariUrl이 업데이트 되고 난 뒤 popular 작업*/
useEffect(() => {
  try {
    // 배우 인기 필모그래피
    const popular = [...artUrl].sort((a, b) => b.vote_average - a.vote_average).slice(0, 5);
    setArtPopular(popular);
  } catch (error) {
    console.log(error)
  }
}, [artUrl]);

타입에 따라 배경 및 유명작품 & 리스트 변경

- 영화 클릭시

- TV 클릭시

profile
끄적끄적

0개의 댓글