2024/03/06 7

React - Transition

전환애니메이션 만드는 법 애니메이션 동작 전 css 를 만들어서 className 을 붙여줍니다. 애니메이션 동작 후 css 를 만들어서 className 을 붙여줍니다. 둘 중 하나의 className 에 transition 속성을 추가해줍니다. 원할 때 두번째( 동작 후 css ) className 을 붙여주면 됩니다. 애니메이션 사용하는법 위에서 만든 애니메이션을 사용하려면 className end 를 태그에 붙였다가 땠다가 해야합니다. 그러기 위해서는 아래처럼 코드를 작성하면 변경이 되는 것이 맞지만 리액트 18 버전부터 추가된 automatic batching 기능 때문에 근처에 있는 state 변경 함수들이 실행될 때마다 재랜더링 해주는 것이 아니라 state 들이 전부 다 변경되고나서 마지막..

JS/React 2024.03.06

React - tab ui 만들기

tab UI 란 tab UI 쇼핑몰에 보면 상품 사진 아래쪽에 상세정보, 리뷰, q&a, 반품/교환 정보 등 화면의 일부만 바꾸어서 여러가지 정보를 보여줄 때 사용합니다. 구현 먼저 부트스트랩을 이용해서 버튼의 html, css 를 먼저 완성합니다. 그 다음에 tab 의 상태를 저장할 state 를 만들어줍니다. 그리고나서 JSX 부분에는 if 문 같은걸 사용할 수 없으므로 component 를 하나 만들어서 아래와 같이 구현해 줍니다. 여기서 또 다른 방법으로 배열안에 html 을 전부 넣어두고 배열에서 자료를 꺼내는 문법을 사용해서 처리하는 것도 가능합니다.( 배열에서 자료꺼내는 문법: 배열[] ) 마지막으로 버튼을 눌렀을 때 state 를 바꿔줘서 누를 때마다 해당하는 화면을 보여주도록 구현합니다.

JS/React 2024.03.06

React - ajax 활용하기

ajax 란 비동기 방식으로 서버에 데이터를 요청할 때 사용합니다. 서버에 어떤 방법으로 어떤 데이터를 요청할지를 적어서 요청하는 방식입니다. 요청하는 방식에는 GET 방식과 POST 방식이 있고, 어떤 데이터를 요청할지는 url 을 이용해서 작성해줍니다. ajax 사용법 XMLHttpRequest ( 옛날 방식 ) fetch() ( 요즘 방식 ) fetch 를 사용하면 아래와 같이 가져온 json 데이터를 변환해주는 과정이 필요합니다. fetch 는 기본 설정이 get 방식이기 때문에 post 방식으로 사용하고 싶으면 아래와 같이 설정이 필요합니다. axios ( 외부라이브러리 ) ( 많이 사용 ) 먼저 터미널에 아래의 명령어를 입력해서 axios 를 설치해줍니다. npm install axios 상단..

JS/React 2024.03.06

React - Lifecycle & useEffect

React 의 Lifecycle mount ( 페이지가 눈에 보이도록 장착 ) update ( 페이지가 업데이트 될 때 ) unmount ( 페이지가 제거될 때 ) 컴포넌트의 Lifecycle 에 간섭하는 방법 class 컴포넌트에서 사용하는 방법( 옛날 방식 ) 함수형 컴포넌트에서 사용하는 방법 useEffect 라는 훅을 사용합니다. useEffect 훅을 사용하는 이유 useEffect 는 실행시점이 약간 다릅니다. 컴포넌트 안에 코드들은 그냥 바로 실행이 되는데, useEffect 안에있는 코드들은 html 랜더링이 다 끝나고나서 실행이 됩니다. 이것이 왜 장점인가 복잡하고 시간이 오래걸리는 코드가 있다고 할 때 useEffect 없이 그냥 코드를 작성하게되면 이 연산이 끝나는 1 ~ 2 초 정도..

JS/React 2024.03.06

React - Styled-components

styled-components 란 css 설정을 전부 다 js 파일에서 할 수 있도록 해주는 라이브러리 입니다. 설치하기 터미널을 열어서 아래의 명령어로 설치합니다. npm install styled-components 사용법 styled-components 를 사용하려면 먼저 import 를 해줘야합니다. 그 다음에 아래와 같이 빽틱(키보드 ~ 키)을 사용해서 css 코드를 작성해줍니다. 이렇게 하면 하나의 컴포넌트가 생기게 됩니다. 컴포넌트니까 변수에 담아서 사용하시면 됩니다. 컴포넌트이므로 맨앞글자 대문자로 작성해주셔야합니다. 그리고 만약에 여러가지 버튼색이 필요하다라고 한다면, props 문법을 사용하면 됩니다. ‘${ }’ 를 사용해서 props 를 설정해두면 component 를 사용할 때 ..

JS/React 2024.03.06

React - Router

React Router란? 설치하기 & 기본설정 터미널에 아래의 명령어를 입력해서 라이브러리를 설치합니다. # @6 은 버전을 의미합니다 npm install react-router-dom@6 # 또는 yarn add react-router-dom@6 그 다음에 인터넷에 react-router-dom 6 버전 이라고 검색해서 설명서에 적힌 설치과정을 그대로 따라해주시면 됩니다. index.js 로 가서 아래의 코드들을 추가합니다. 이러면 일단 설치와 기본설정은 완료입니다. 사용법 외부 라이브러리의 사용법은 필요할 때 마다 검색해서 찾아서 사용하면 됩니다. 라우터는 먼저 몇가지 import 가 필요합니다. 그 다음에 아래와 같이 path 별로 페이지를 나누어줍니다. ( path 에는 해당 경로를, elem..

JS/React 2024.03.06