Secret React Server Component Patterns They Don't Want You To Know 이 비디오는 다양한 모델의 React Server Components와 NextJS 13을 사용하여 추천 캐로셀 구현을 다룹니다. 추천 API 구축, Jotai atoms 및 custom hooks 사용, 서버 사이드 fetch 구현 및 React 18의 streaming 기능 활용이 포함됩니다. - 📚 NextJS 13은 React Server Components의 하나의 모델만을 지원하지만, Wakuwork은 더 나은 개발자 경험을 위해 다양한 모델을 제공하며, 이 강의는 추천 캐로셀 구현을 다룹니다. - React Server Components(RSCs)는 여러 모델을 가지고 있으며 NextJS 13은 가장 보수적인 모델만 지원하지만, Wakuwork은 RSCs의 다양한 모델을 보여줍니다. - 이전에는 자켓 선택기에 추가 아이템이 있었으며, 빨간색 및 녹색 경계 상자는 각각 서버 및 비서버 구성 요소를 나타냅니다. - 클라이언트 구성 요소와 중첩된 React Server Components는 좋지 않은 아이디어이지만, 이 예제는 여전히 작동하며, 강의에서 비교를 위한 참조점을 제공합니다. - 이 강의는 NextJS 13 버전을 다루며, 추천 캐로셀 구현에 초점을 맞춥니다. - 👨‍💻 NextJS 13에서 새 디렉토리와 routes 파일을 만들어 추천 API를 구축하고, 클라이언트에서 자체 서버로 요청을 보내기 위해 public 디렉토리를 마이크로서비스로 사용합니다. - NextJS 13에서 추천 API를 구축하려면, combinations라는 새 디렉토리와 GET 동사에 응답하는 routes 파일을 만들어야 합니다. 그리고 자신의 서버에서 색상 JSON 파일을 가져오기 위해 자체 요청을 보내야 합니다. - 클라이언트에서 자체 NextJS 서버로 요청을 보내기 위해 public 디렉토리를 마이크로서비스로 사용하고, 서버는 그 다음에 마이크로서비스로 요청을 보내고 JSON 응답을 반환합니다. - 👨‍💻 store.ts 파일의 Jotai atoms을 사용하여 제품 캐로셀 데이터를 요청할 수 있으며, useColor라는 커스텀 훅은 녹색으로 색상 atom을 초기화하고, 조합을 가져오기 위해 비동기 atoms와 종속성을 만들 수 있습니다. - 제품 캐로셀 데이터를 Jotai atoms의 store.ts 파일에서 요청합니다. - useColor라는 커스텀 훅은 녹색 색상 atom을 초기화하고, 문자열 값과 setter를 반환하여 컴포넌트에서 색상을 업데이트하는 데 사용됩니다. - Jotai는 비동기 atoms를 지원하며, atoms 간 종속성을 만들 수 있습니다. 이를 사용하여 색상별 조합을 비동기적으로 가져오는 데 사용할 수 있으며, 코드를 통해 설명합니다. - 🚀 NextJS 13은 이제 제품 선택 및 장바구니 추가를 위한 서버 및 클라이언트 구성 요소를 갖추고 있으며, Wakuwork은 프론트 엔드 개발을 위한 간단한 백 엔드를 제공합니다. - NextJS 13의 기본 구현은 서버 구성 요소 레이아웃과 Jotai hooks를 사용한 제품 선택과 장바구니 추가를 위한 클라이언트 구성 요소를 포함합니다. - Wakuwork은 프론트 엔드를 위한 더 간단한 백 엔드를 만드는 데 사용되는 액션을 사용하는 NextJS 13의 최소한의 경쟁자입니다. - Jotai를 사용하여 제품 셀렉터를 RSC 레이아웃에 클라이언트 구성 요소와 함께 추가하려면, public에 호스팅된 마이크로서비스에서 데이터를 가져오기 위한 API를 만들어야 합니다. - 🚀 React ServerComponent에서 fetchCombinations.ts와 useState/useEffect를 사용하여 마이크로서비스로 서버 사이드 fetch를 구현합니다. - "use server"가 상단에 있는 fetchCombinations.ts라는 새 파일을 만들어 서버 사이드 fetch를 구현합니다. 이 파일에는 localhost 3000의 절대 URL이 포함됩니다. - React ServerComponent에서 fetchCombinations를 사용하려면, useState와 useEffect를 사용하여 제품 셀렉터와 제품 캐로셀을 통과시켜야 합니다. - 👨‍💻 네트워크 호출 및 페이로드를 사용하여 요소 색상을 변경하고, 조합을 가져오기 위한 함수를 만들고, React 18의 streaming 기능을 활용하여 서버 구성 요소로 변환합니다. - 스피커는 별도의 API를 만들 필요 없이 네트워크 호출 및 페이로드를 사용하여 요소 색상을 변경하는 방법을 보여줍니다. - 조합을 가져오기 위한 함수를 만들고, React Server Component에서 어떤 하위 구성 요소에서도 사용할 수 있도록 전달합니다. 더 많은 복잡한 예제 코드인 Wakuwork 또는 Qwik를 참고해보세요. - React 18에는 마이크로서비스로 직접 fetch를 수행할 수 있도록 서버 구성 요소를 변환하는 streaming 기능이 있습니다. - 👕 React server components에서 색상 셀렉터를 변경하면 제품 캐로셀이 업데이트됩니다. 그러나 클라이언트 구성 요소를 중첩하면 무한 루프가 발생할 수 있습니다. - 제품 캐로셀을 자켓 색상 선택기로 가져오려면, Wakuwork 클라이언트의 Serve 함수를 사용하고 마운트된 상태를 추적하여 클라이언트에서 마운트된 경우에만 ProductCarousel이 사용되도록 합니다. - 페이지에 제품 캐로셀을 추가하려면, entries 파일 및 prefetch에 해당하는 항목과 prefetcher를 추가해야 합니다. - 네트워크를 검사하면 React server components에서 색상 셀렉터를 변경하면 제품 캐로셀이 업데이트됩니다. - React server components에서 클라이언트 구성 요소를 중첩하면 무한 루프가 발생할 수 있으므로 이는 안티 패턴입니다. - 🚀 NextJS 13 beta는 새로운 React Server Component 아키텍처를 도입하였습니다. 코멘트에서 선호하는 아키텍처를 공유해 주세요. - NextJS 13은 여러 가지 React Server Component 아키텍처를 제공하며, 스피커는 코멘트에서 선호하는 아키텍처에 대한 의견을 공유할 것을 권장합니다.

Secret React Server Component Patterns They Don't Want You To Know

www.youtube.com

Secret React Server Component Patterns They Don't Want You To Know

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2023년 4월 10일 오후 9:16

댓글 0

    함께 읽은 게시물

    괴물은 하루아침에 태어나지 않는다

    큰 것을 하는 것보다 매일 작은 것을 완벽하게 해내는 노력이 더 중요하다. 내가 성격 장애의 하나인 자기애성 성격장애자(NPD, Narcissistic Personality Disorder)를 만나면서 느낀 것은, 처음에는 그런 사람도 "정상인"처럼 느껴진다는 것이었다. 다만 그의 미친짓은 내가 매일매일 "사소한" 사건들로 상대방에게 익숙해졌을 때 발생한다.

    ... 더 보기

    Next.js 프로젝트를 AWS EKS에 배포하며 배운 것들

    ... 더 보기

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

    product.kyobobook.co.kr

    쿠버네티스를 활용한 클라우드 네이티브 데브옵스 | 존 어런들 - 교보문고

     • 

    저장 5 • 조회 979


    개발자는 개발만 잘하면 될까

    최근에 친구가 추천해준 데일 카네기의 인간관계론을 읽던 중 고액 연봉을 받는 엔지니어들의 특징에 대한 흥미로운 내용이 있었다.

    ... 더 보기

     • 

    저장 14 • 조회 2,621



    스트레스를 잘 관리하면서 건강하게 살아가고 싶다면, 우선 살아있는 한 우리가 해야 할 일들은 영원히 없어지지 않을 것이므로, 해야 할 일을 100% 해내면서 할 일 목록을 완전히 없애는 데 많은 노력을 들이기보다는 70% 정도만 해내도 만족할 필요가 있다.

    ... 더 보기

    [박진영의 사회심리학]스스로 만들어 내는 스트레스

    m.dongascience.com

    [박진영의 사회심리학]스스로 만들어 내는 스트레스

    어제 AI 시대의 개발자 토론회에서 내가 대 AI 시대에는 버전관리 시스템이 필요없을 수도 있다고 생각해야한다는 말을 했는데, 그정도로 파격적인 생각을 해야한다는 이야기긴했지만, 진짜 그럴까?를 다시 한 번 생각해봤다.


    우선 버전관리 시스템의 목적은 크게 다음 세 가지다.


    ... 더 보기

    조회 1,503