본문 바로가기

FastCampas X Yanolja BootCamp19

패스트캠퍼스x야놀자 웹 프론트엔드 부트캠프 미니프로젝트 리팩토링 리팩토링 내용 2주간의 프로젝트 기간이 끝나고 다시 2주동안 리팩토링을 진행하기로 했다. 전에는 객실(룸) 이미지가 없었기에 기본 숙소 이미지로 대체했었지만, 이번엔 오픈 api에서 더 많은 정보를 불러와서 해당 내용들을 추가하는 방식으로 진행하기로 했다. 내가 진행한 리팩토링 내용은 다음과 같다. 카카오맵 API 추가 -> 숙소 위치 마커 렌더링 마커 클릭 시 커스텀 오버레이 렌더링 -> 클릭 시 길찾기 페이지 생성 숙소상세정보 API 변경에 따른 추가 정보 get 객실 추가 정보 처리 장바구니 API 변경에 따른 로직 처리 예약하기 API 변경에 따른 로직 처리 리팩토링 기간 2023년 12월 4일 ~ 2023년 12월 15일 결과물 - 객실 이미지 슬라이더 구현 - 이미지 없을 시 기본 이미지 렌더.. 2023. 12. 19.
패스트캠퍼스x야놀자 웹 프론트엔드 부트캠프 미니프로젝트 회고 프로젝트 내용 패스트캠퍼스x야놀자 웹 프론트엔드 부트캠프 미니프로젝트를 진행했다. 주제는 다음과 같다. 본 프로젝트는 숙박 예약 서비스를 완성하는 것을 목표로 함 본 프로젝트의 개발 범위는 다음과 같다 - 회원 인증 ◼ 회원가입 ◼ 로그인 - 상품 조회 ◼ 전체 숙박 상품 목록 조회 (옵션) 카테고리를 임의 생성하여 분류하여 출력 ◼ 개별 숙박 상품 상세 소개 - 상품 선택 및 장바구니 담기 ◼ 숙박 상품 옵션 선택 ◼ 장바구니 담기 ◼ (또는) 바로 결제하기 - 장바구니 ◼ 장바구니 보기 ◼ 장바구니에서 주문하기 버튼 클릭 시, 예약(주문) 페이지로 이동 - 예약(주문) 하기 ◼ 만 14세 이상 이용 동의 (상세 설명서 X, 체크박스로만 간단히 처리) ◼ 결제하기 버튼 클릭 시, 상품을 주문한 것으로 .. 2023. 12. 19.
리덕스(Redux) 리덕스란? 자바스크립트 어플리케이션을 위한 상태 관리 라이브러리 리덕스 Data Flow Action: 간단한 JS 객체. 작업 유형을 지정하는 type 속성이 있으며 선택적으로 redux 저장소에 일부 데이터를 보내는 데 사용되는 payload 속성도 가질 수 있음 Reducer: 어플리케이션 상태 변경 사항을 결정하고 업데이트된 상태를 반환하는 함수. 인수로 조치를 취하고 store 내부 상태 업데이트함 Redux store: 이들을 하나로 모으는 객체 저장소는 어플의 전체 상태 트리를 보유. 내부 상태를 변경하는 유일한 방법은 해당 상태에 대한 Action을 전달하는 것. Redux store는 클래스가 아님. 몇 가지 메소드가 있는 객체일 뿐 Dispatch: 스토어 내장 함수 중 하나로 리듀서에.. 2023. 10. 15.
리액트 Context 리액트에서 한 컴포넌트 안에서 데이터를 생성하거나 업데이트하거나 다른 컴포넌트와 데이터를 공유해서 사용하는 방법에는 여러가지가 있음 React Context란? Context는 모든 수준에서 수동으로 props를 전달하지 않고도 구성 요소 트리를 통해 데이터를 전달할 수 있는 방법을 제공 React Context는 컴포넌트 트리의 깊이에 관계없이 props를 전달하지 않고도 컴포넌트에 데이터를 제공 Context는 전역 데이터를 관리하는 데 사용 ex) 전역 상태, 테마, 서비스, 사용자 설정 등 Context API란? 전역 데이터를 Context에 담아서 사용하려면 먼저 Context를 생성해야 함 const MyContext = React.createContext(defaultValue); Cont.. 2023. 10. 12.
리액트 기초(2) 이번에는 리액트를 사용해 디지니플러스 웹사이트를 만들 예정이다. 만들기 전에 필요한 기초 부분을 살펴보자. The Movie DB API 요청을 위한 Axios 인스턴스 생성 및 요청 보내기 Axios란? 브라우저, Node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리 Axios 사용방법 axios 모듈 설치: npm install axios --save Axios 인스턴스화 하는 이유 중복된 부분을 계속 입력하지 않아도 되기 때문에 cf) js파일에 'racfe' 치면 functional한 컴포넌트 바로 생성! Styled Component란? CSS-in-JS라고 하는 JS 파일 안에서 CSS를 처리할 수 있게 해주는 대표적인 라이브러리 설치 방법 1. npm - n.. 2023. 10. 9.
리액트 기초 전개연산자란? 특정 객체 또는 배열의 값을 다른 객체, 배열로 복제하거나 옮길 때 사용 배열 조합 const arr1 = [1,2,3]; const arr2 = [4,5,6]; const arr3 = [7,8,9]; const arrWrap = [...arr1, ...arr2, ...arr3]; 객체 조합 const obj1 = { a: 'A'; b: 'B'; } const obj2 = { c: 'C'; d: 'D'; } // 객체 자체가 들어감 const objWrap = {obj1, obj2}; // 객체 자체가 아닌 각각의 값 할당 const objWrap2 = {...obj1, ...obj2}; 전개연산자를 사용하면 기존 배열을 보존할 수 있음 const arr1 = [1,2,3]; const a.. 2023. 10. 4.