건물을 통해 배우십시오! 이 튜토리얼은 Netlify Serverless 기능 및 Airtable을 사용하여 React Application을 생성하여 Jamstack 아키텍처를 보여줍니다. Jamstack은 정적 호스팅을 강조하지만이 프로젝트는 전체 CRUD 기능을 포함한 동적 기능을 보여줍니다.
기술 선택
JavaScript, API 및 Markup을 대표하는 Jamstack은 기존 기술을 새로운 방식으로 활용합니다. 이 튜토리얼의 기술 스택은 쉽게 배포 및 호스팅의 우선 순위를 정합니다. Netlify 기능은 Airtable을 사용하여 백엔드 크루드 작업을 처리하여 NetLify에서 원활한 배포를 가능하게합니다. AirTable은 데이터베이스 관리를 단순화하여 사용자 친화적 인 인터페이스 및 JavaScript SDK를 제공하여 별도의 데이터베이스 호스팅 및 관리가 필요하지 않습니다.
응용 프로그램 개요
이 응용 프로그램은 온라인 과정을 추적하며 개인 학습 대기열처럼 행동합니다. 이를 통해 사용자는 구매대로 추가, 업데이트, 마크 및 코스를 삭제할 수 있습니다.
출처 코드 : React 및 Netlify 기능을 사용하여 안전하고 생산 준비가 된 Jamstack 애플리케이션을 구축하는 새로운 코스를 포함하여 온라인 코스를 만듭니다. 이 과정은 인증, 에어테이블 데이터 저장, 스타일 구성 요소, NetLify CI 등을 다룹니다. 자세히 알아보기 →
에어테이블 설정
AirTable은 데이터베이스에 "베이스"를 사용합니다. 다음 단계를 따르십시오.
- 무료 에어테이블 계정을 만듭니다.
- 새베이스를 만듭니다 (나는 "Mine"Jamstack Demos "라고 명명).
- 이 열에서 "코스"라는 테이블을 만듭니다.
-
name
(한 줄 텍스트) -
link
(한 줄 텍스트) -
tags
(다중 선택 - "노드", "반응", "Jamstack", "JavaScript"와 같은 태그 추가) -
purchased
(확인란)
-
- 샘플 코스 데이터를 추가하십시오.
에어테이블 자격 증명을 얻습니다
코딩하기 전에이 에어 테이블 자격 증명을 수집하십시오.
- API 키 : AirTable 계정 개요 페이지에서 찾을 수 있습니다.
- 기본 ID : 기본 세부 사항 내에 Airtable API 페이지에 있습니다.
- 테이블 이름 : (예 : "코스")
프로젝트 설정
스타터 프로젝트는 Github에서 제공됩니다. 다음 단계를 따르십시오.
- 저장소를 포크하십시오.
- 로컬로 포크 리포지토리를 복제하십시오.
-
starter
브랜치 (git checkout starter
) 체크 아웃.
이 프로젝트에는 create-react-app
구조, 서버리스 기능을위한 functions
디렉토리 및 netlify.toml
구성 파일이 포함됩니다. dotenv
패키지 설치 :
NPM 설치 DOTENV
AirTable 자격 증명으로 프로젝트 루트에서 .env
파일을 만듭니다.
<code>AIRTABLE_API_KEY=<your_api_key> AIRTABLE_BASE_ID=<your_base_id> AIRTABLE_TABLE_NAME=<your_table_name></your_table_name></your_base_id></your_api_key></code>
서버리스 기능
NetLify 함수는 /functions
디렉토리의 JavaScript 파일입니다. courses.js
파일은 기본 API 엔드 포인트 역할을합니다. HTTP 방법을 기반으로 헬퍼 기능 ( getCourses
, createCourse
, updateCourse
, deleteCourse
)을 사용합니다.
Exports.Handler = async (이벤트) => { if (event.httpMethod === 'get') { GetCourses (이벤트)를 기다리고 있습니다. } // ... 기타 HTTP 방법 };
airtable.js
파일은 Airtable 연결을 구성합니다.
요구 ( 'dotenv'). config (); var airtable = 요구 사항 ( 'Airtable'); // ... 에어테이블베이스 및 테이블 설정 ...
CRUD 작업
도우미 기능은 에어 테이블과 상호 작용합니다.
-
getCourses.js
:table.select().firstPage()
사용하여 코스를 검색하고 오류를 처리하고 응답을 형식화합니다. -
createCourse.js
:table.create()
사용하여 새 코스를 만듭니다. -
updateCourse.js
:table.update()
사용하여 코스를 업데이트합니다. -
deleteCourse.js
:table.destroy()
사용하여 코스를 삭제합니다.
테스트 : netlify dev
사용하여 기능을 로컬로 실행하십시오. 우체부 또는 불면증과 같은 도구를 사용하여 엔드 포인트를 테스트하십시오.
반응 프론트 엔드
React 응용 프로그램은 서버리스 기능과 상호 작용합니다.
-
App.js
:loadCourses
fetch('/api/courses')
사용하여 코스를 가져옵니다. -
CourseForm.js
:submitCourse
새 과정을 만들기위한 게시물 요청을 보냅니다. -
Course.js
:markCoursePurchased
Send 요청 요청 및deleteCourse
삭제 요청을 보냅니다.
NetLify에 배치
GitHub 저장소를 연결하여 NetLify에 배포하십시오. 지정 :
- 빌드 명령 :
npm run build
- 게시 디렉토리 :
build
-
.env
파일에서 환경 변수를 추가하십시오.
결론
이 튜토리얼은 Jamstack 아키텍처의 단순성과 힘을 보여줍니다. React, Netlify 기능 및 AirTable의 조합은 강력하고 쉽게 배포 할 수있는 풀 스택 애플리케이션을 제공합니다. 개발 워크 플로우를 더욱 향상시키기 위해 다른 Jamstack 서비스 및 기술을 탐색하십시오.
위 내용은 React, Serverless 및 Airtable과 함께 Jamstack의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

이것은 우리가 양식 접근성에 대해 한 작은 시리즈의 세 번째 게시물입니다. 두 번째 게시물을 놓친 경우 "사용자 초점 관리 : Focus-Visible"을 확인하십시오. ~ 안에

이 튜토리얼은 Smart Forms 프레임 워크를 사용하여 전문적인 JavaScript 양식을 작성하는 것을 보여줍니다 (참고 : 더 이상 사용할 수 없음). 프레임 워크 자체를 사용할 수 없지만 원칙과 기술은 다른 형태의 건축업자와 관련이 있습니다.

CSS Box-Shadow 및 개요 속성은 주제를 얻었습니다. 실제 테마에서 어떻게 작동하는지에 대한 몇 가지 예와 이러한 스타일을 WordPress 블록 및 요소에 적용 해야하는 옵션을 보자.

Svelte Transition API는 맞춤형 전환을 포함하여 문서를 입력하거나 떠날 때 구성 요소를 애니메이션하는 방법을 제공합니다.

이 기사에서 우리는 스크롤 바의 세계로 뛰어들 것입니다. 너무 화려하게 들리지는 않지만 잘 설계된 페이지가 손을 잡고 있습니다.

웹 사이트의 컨텐츠 프레젠테이션을 설계하는 데 얼마나 많은 시간을 소비합니까? 새 블로그 게시물을 작성하거나 새 페이지를 만들 때

NPM 명령은 서버 시작 또는 컴파일 코드와 같은 것들에 대한 일회성 또는 지속적으로 실행되는 프로세스로 다양한 작업을 실행합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

WebStorm Mac 버전
유용한 JavaScript 개발 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
