FE 29

[React] 리액트 이벤트 캡처링

💥 FullCalendar작업을 하고 있는데 발생한 문제  이벤트가 부모 > 자식에게 적용되지 않는다 ! 날짜를 선택했을 때, 적용되는 이벤트(dateClick) 작성해두었었다. 그런데 날짜를 선택하면 잘 적용이 되었지만, 날짜 안에 자식 요소인 일정이 들어간 경우는 적용이 되지 않았다..즉, 일정(하위요소)가 추가되면 상위 요소에 적용되던 이벤트의 가용범위가 너무 작아진다는 문제 발생 !!  ✔️ 해결 방법 문제를 해결하기 위해 GPT 교수님께 여쭤보니 '이벤트 캡처링' or '이벤트 버블링'을 사용하라고 하심 !  * 이벤트 캡처링 : 이벤트가 최상위 부모 요소에서 시작해 이벤트가 발생한 요소까지 내려온다. * 이벤트 버블링 : 이벤트가 발생한 요소에서부터 다시 최상위 부모 요소까지 올라간다.  이..

FE/React 2024.08.18

[React] 리액트 App.js 화면에 꽉 차게 설정

💥 트러블 슈팅 문제점 :   개발 중 굉장히 거슬리는 문제 하나가 발생하였다..  맨 위 헤더 컴포넌트의 border를 설정했는데.. 저렇게 hr처럼 나온다. 확인해보니 화면에 꽉 차지 않는 이유 때문 !   아니 왜 App.js가 화면에 꽉 차지 않지?  그래서 style에 width : 100%도 추가해주었는데.. 되지 않았음 😭    하지만 문제는 생각보다 간단히 해결된다. 해결방법 - 기본 스타일 초기화브라우저의 기본 스타일이 영향을 미칠 수 있다고 한다. CSS 리셋이나 노말라이즈 CSS를 사용하여 기본 스타일을 초기화하자 !  npm install normalize.css // index.jsimport 'normalize.css'; 이렇게 간단하게 해결 가능 ~

FE/React 2024.06.12

[React] 하단 네비게이션 만들기

만든지는 한~ 참 되었지만 까먹기 전에 얼른 써야겠다  ✅ 하단 네비 커스텀 요구사항 1. 클릭 시, 페이지 이동(기본)2. 페이지에 맞는 Footer메뉴 선택 3. 페이지 바닥에 고정 👩🏻‍💻 하단 네비 만드는 과정 1. App.js에 페이지 Router 생성 기본적으로 페이지를 이동하기 위해서는 페이지 라우팅이 필요하다. 하단 네비에서 react-router-dom의 Link를 사용할 계획이었기에 App.js에 이러한 라우터를 추가해주었다.  } /> }/> }/> }/> }/> }/>    2. Footer.jsx 생성 - Link로 경로를 주고, 메뉴들을 생성해주었다. impo..

FE/React 2024.06.11

[FE] 리액트 CI/CD (1) AWS S3에 SPA 올리고 Github-actions으로 자동 업데이트

이번주에 배포를 처음해본 프론트엔드 쌉 주니어입니다. 이번 편은 저의 첫 배포에서의 시행착오와 발생했던 에러들에 대해서 담아볼까 합니다. 목차1. IAM 유저 생성 2. S3 버킷 생성 3. Github-actions 연결 1. IAM 유저 생성   1 - 1. S3, AWS Cloud 사용을 위한 Access 추가   2. S3 버킷 생성 ** 가비아에서 도메인 구매 후 연결할 예정이시라면, 꼭 도메인 이름과 버킷 이름을 통일하시길 바랍니다.. ( EX. 버킷이름 - domain.com ) 2 - 1. 버킷 생성 - ACL활성화 > 버킷 소유자 선호 - 퍼블릭 액세스 차단 해제    2 - 2. 정적 호스팅 설정 생성된 버킷 속성 탭(properties)에서 정적 호스팅(Static website ho..

FE 2024.06.05

[React] FontAwesome 사용하기

(내가 잘 까먹어서 올려두는) 리액트에서 폰트 어썸 사용하기 폰트어썸을 모를땐 파일에 jpg를 추가해서.. 하나씩 넣었다. 블로그에 올리고 img주소를 복붙했다. 이 얼마나 고된 작업이던가 하지만 폰트어썸을 만나고 난 뒤, 내 인생은 360도 변했다. 폰트어썸.., 나의 빛(까진 아님), 폰트어썸, 나의 구원 ! 어쨌든 정말 간편하다! 1. fontAwesome설치 $ npm i --save @fortawesome/fontawesome-svg-core $ npm i --save @fortawesome/free-solid-svg-icons $ npm i --save @fortawesome/react-fontawesome 2. FontAwesome.jsx 파일 만들기 import { library } fro..

FE/React 2024.04.17

[React] Snippets/ 리액트 단축키 사용법

1. Sinppets란 Sinppets : 코드 조각이나 코드 템플릿 소프트웨어 개발에서 일정한 패턴이나 반복되는 코드를 빠르게 작성할 수 있도록 도와주는 기능 2. 사용 방법 리액트 개발을 할 때 효율적으로 작업하기 위해 사용하는 단축키가 몇가지 있다. Visual Studio Code에선 "ES7 React/Redux/GraphQL/React-Native Snippets"이라는 확장팩을 설치해서 사용할 수 있다. 확장팩 설치 > react sinppets 검색 3. 자주쓰는 단축키 1. 함수형 React 컴포넌트 생성 - rfc // rfc import React from 'react' export default function Home() { return ( Home ) } 2. 기본적인 클래스형 ..

FE/React 2024.03.25

[React] 리액트 배너 슬라이드 만들기(Swiper)

우리 프로젝트 웹 화면이 정적인 느낌이 강해서 .. 로딩 페이지에 이어 이번에는 홈 화면에 배너 슬라이드를 추가하였다. Swiper 사용하기 Swiper React Components Swiper is the most modern free mobile touch slider with hardware accelerated transitions and amazing native behavior. swiperjs.com 여기서 다양한 방법을 만나볼 수 있다 ~ ! Swiper 설치 npm i swiper Swiper 사용법 // Import Swiper React components import { Swiper, SwiperSlide } from 'swiper/react'; // Import Swiper st..

FE/React 2023.05.29

[React] 리액트 로딩 페이지 만들기 (react-spinners)

프론트에서 API를 호출하여 가져오는 동안 페이지에 아무런 변화가 없으면 사용자들은 당황한다 .. `어 ..? 이게 되고 있는 것 맞나 ? ` 그래서 로딩 화면을 넣는데 .. 리액트에서 어떻게 넣을까 ! 고민하고 있었는데 라이브러리만 잘 쓰면 뚝딱하고 만들어진다 (라이브러리 최고 ~ ) React spinner 설치하기 npm install react-spinners 또는 npm install react-spinners --save 사용법 - Spinner 모양 선택하기 https://www.davidhu.io/react-spinners/ React Spinners www.davidhu.io 이 사이트에 들어가서 여러가지 스피너 중 마음에 드는 스피너를 선택하면 된다. 가장 기본적인 BeatLoader와..

FE/React 2023.05.24

[React Native] 맥 OS 개발환경 설정중 발생한 오류

react-native를 설치해서 사용할 수 있는 방법은 크게 react-native-cli를 설치하거나 expo-cli를 설치하는 것인데 expo 설치는 처음이 쉽지만 여러가지 제약이 있어 불편한 점이 있다. 따라서 react-native-cli를 설치해서 사용했다. 이 자식은 처음 설치가 굉장히 굉장히 복잡하고 .. 번거롭다 . 1. homebrew 설치 2. rbenv 설치 3. node.js 설치 4. watchman 설치 5. react-native-cli설치 6. xcode 설치 7. cocoapods 설치 8. jdk설치 9. 안드로이드 스튜디오 설치 이렇게 9개를 설치했는데 오류가 많이 떴다 컴퓨터를 Expo로 갈아타고 싶었으나 .. 어찌저찌 해냈다 .. 휴 ~ 설치과정은 프로젝트가 끝나면..

FE/React 2023.04.22