React74 [공식문서-Handbook] The Basics(기초) JavaScript의 모든 값은 저마다 다양한 동작들을 내장하고 있으며 이는 다양한 연산(Operation)을 실행하여 확인할 수 있습니다. 이는 다소 추상적으로 들릴 수 있는데, 간단한 예시로 message라는 이름의 변수에 대하여 실행할 수 있는 몇몇 연산들을 살펴보겠습니다. // 'message'의 프로퍼티 'toLowerCase'에 접근한 뒤 // 이를 호출합니다 message.toLowerCase(); // 'message'를 호출합니다 message(); 위 코드를 분석해보면, 우선 첫 번째 실행 코드 줄에서는 toLowerCase라는 프로퍼티에 접근한 뒤 이를 호출합니다. 두 번째 줄에서는 message를 직접 호출하려 하고 있습니다. 하지만 message의 값이 무엇인지 모른다면 - 일반적.. 2023. 9. 27. [공식문서] TypeScript for JavaScript Programmers 현대 프로그래밍 언어에서 TypeScript와 JavaScript의 관계는 다소 독특합니다. TypeScript은 JavaScript 위에 레이어로서 자리잡고 있는데, JavaScript의 기능들을 제공하면서 그 위에 자체 레이어를 추가합니다. 이 레이어가 TypeScript 타입 시스템입니다. JavaScript는 이미 string, number, object, undefined 같은 원시 타입을 가지고 있지만, 전체 코드베이스에 일관되게 할당되었는지는 미리 확인해 주지 않습니다. TypeScript는 이 레이어로서 동작합니다. 이는 이미 존재하고 잘 동작하는 JavaScript 코드는 동시에 TypeScript 코드라는 의미지만, TypeScript의 타입 검사기는 사용자가 생각한 일과 JavaScr.. 2023. 9. 27. [공식문서] NextJS - Deploying Your Next.js App 이 마지막 기본 레슨에서는 Next.js 앱을 프로덕션 환경에 배포하는 방법을 알아보겠습니다. Next.js의 창시자들이 만든 플랫폼인 Vercel에 Next.js 앱을 배포하는 방법을 배우겠습니다. 또한 다른 배포 옵션에 대해서도 이야기할 것입니다. 사전 준비: 이 레슨을 수강하려면 GitHub 계정이 필요합니다. 이 레슨에서 다음을 배우게 됩니다. Next.js 앱을 Vercel에 배포하는 방법 DPS 워크플로우: 개발(Develop), 미리보기(Preview), 배포(Ship) Next.js 앱을 자체 호스팅 제공 업체에 배포하는 방법 시작 코드 다운로드(선택 사항) 이전 레슨에서 진행 중이 아니라면 다음 레슨을 위해 시작 코드를 다운로드하고 설치하고 실행할 수 있습니다. 이렇게 하면 이전 레슨의 .. 2023. 9. 14. [공식문서] NextJS - API Routes Next.js는 Node.js 서버리스 함수로 API 엔드포인트를 쉽게 생성할 수 있는 API 라우트를 지원합니다. 이 레슨에서는 블로그 앱에는 필수가 아니지만 API 라우트를 사용하는 방법에 대해 간략히 설명하겠습니다. 이 레슨에서 다음 내용을 배울 수 있습니다: API 라우트를 생성하는 방법. API 라우트에 관한 유용한 정보. 시작 코드 다운로드 (선택 사항) 이전 레슨에서 진행하지 않으신다면, 이 레슨을 위한 시작 코드를 다운로드하고 설치한 후 실행할 수 있습니다. 아래 명령을 사용하여 이전 레슨의 결과와 동일한 nextjs-blog 디렉토리를 설정합니다. 이전 레슨을 완료한 경우 이 작업이 필요하지 않습니다. npx create-next-app@latest nextjs-blog --use-npm.. 2023. 9. 14. [공식문서] NextJS - Dynamic Routes 우리는 인덱스 페이지에 블로그 데이터를 채웠지만 아직 개별 블로그 페이지를 만들지 않았습니다 (여기에 원하는 결과가 있습니다). 이러한 페이지의 URL을 블로그 데이터에 따라 다르게 만들려면 동적 라우트를 사용해야합니다. 이 레슨에서는 다음을 배우게 됩니다: getStaticPaths를 사용하여 동적 라우트를 가진 페이지를 정적으로 생성하는 방법. 각 블로그 게시물의 데이터를 가져오기 위해 getStaticProps를 작성하는 방법. remark를 사용하여 마크다운을 렌더링하는 방법. 날짜 문자열을 깔끔하게 서식화하는 방법. 동적 라우트를 가진 페이지로 연결하는 방법. 동적 라우트에 관한 유용한 정보. 시작 코드 다운로드 (선택 사항) 이전 레슨에서 진행 중이 아니라면 이 레슨을 위한 시작 코드를 다운로.. 2023. 9. 12. [공식문서] NextJS - Pre-rendering and Data Fetching #9 요청 시간에 데이터 가져오기 빌드 시간이 아닌 요청 시간에 데이터를 가져와야 하는 경우 Server-side Rendering을 시도할 수 있습니다. 서버 사이드 렌더링을 사용하려면 페이지에서 getStaticProps 대신 getServerSideProps를 내보내야(export) 합니다. getServerSideProps 사용 다음은 getServerSideProps의 시작 코드입니다. 우리의 블로그 예제에는 필요하지 않으므로 구현하지 않겠습니다. export async function getServerSideProps(context) { return { props: { // props for your component }, }; } 왜냐하면 getServerSideProps는 요청 시간에 호출되므로.. 2023. 9. 8. [공식문서] NextJS - Pre-rendering and Data Fetching #8 getStaticProps 세부 정보 getStaticProps에 대해 알아야 할 몇 가지 중요한 정보가 있습니다. 외부 API 가져오거나 데이터베이스 쿼리하기 lib/posts.js에서는 파일 시스템에서 데이터를 가져오는 getSortedPostsData를 구현했습니다. 그러나 외부 API 엔드포인트와 같은 다 른 소스에서 데이터를 가져올 수도 있습니다. 이렇게 하면 아무 문제없이 작동합니다. export async function getSortedPostsData() { // Instead of the file system, // fetch post data from an external API endpoint const res = await fetch('..'); return res.json(); .. 2023. 9. 8. [공식문서] NextJS - Pre-rendering and Data Fetching #7 getStaticProps 구현하기 Next.js의 사전 렌더링 Next.js에는 Static Generation 및 Server-side Rendering이라는 두 가지 사전 렌더링 형식이 있습니다. 차이점은 페이지의 HTML을 생성하는 시점에 있습니다. Static Generation은 HTML을 빌드 시간에 생성하는 사전 렌더링 방법입니다. 사전 렌더링된 HTML은 각 요청마다 재사용됩니다. Server-side Rendering은 각 요청마다 HTML을 생성하는 사전 렌더링 방법입니다. 중요한 점은 Next.js에서 각 페이지에 사용할 사전 렌더링 형식을 선택할 수 있다는 것입니다. Static Generation을 대부분의 페이지에 사용하고 일부 페이지에 Server-side Rendering을.. 2023. 9. 7. [공식문서] NextJS - Pre-rendering and Data Fetching #6 간단한 블로그 아키텍처 만들기 우리 예제의 블로그 게시물은 애플리케이션 디렉토리의 로컬 마크다운 파일로 저장됩니다(외부 데이터 소스에서 가져오는 것이 아닙니다). 따라서 파일 시스템에서 데이터를 읽어와야 합니다. 이 섹션에서는 파일 시스템에서 데이터를 읽는 블로그를 만드는 단계를 살펴보겠습니다. 마크다운 파일 생성 먼저 루프 폴더에 posts(이것은 pages/posts와 동일하지 않습니다)라는 새로운 최상위 디렉토리를 만듭니다. 그런 다음 posts 내에 pre-rendering.md 및 ssg-ssr.md 두 개의 파일을 만듭니다. 이제 다음 코드를 posts/pre-rendering.md에 복사하세요. --- title: 'Two Forms of Pre-rendering' date: '2020-01.. 2023. 9. 2. 이전 1 2 3 4 5 6 ··· 9 다음