코딩/리액트 16

[새싹 성동 2기] React ref의 이해와 사용법: 패스워드 검증 컴포넌트 구현

React의 ref는 DOM 요소나 React 컴포넌트에 대한 직접적인 참조를 생성하고 관리하는 데 사용되는 특별한 속성입니다.ref는 DOM 조작이 필요한 특정 상황에서 활용되며, 대표적인 사용 사례는 다음과 같습니다.포커스, 텍스트 선택 영역, 미디어 제어애니메이션 실행서드 파티 DOM 라이브러리와의 통합이번 포스팅에서는 ref를 활용해 패스워드 검증 컴포넌트를 구현하는 과정을 살펴보겠습니다. 기능 요구사항입력된 패스워드가 "0000"이면 입력창의 배경색을 파란색으로 변경.입력된 패스워드가 틀리면 배경색을 빨간색으로 변경.잘못된 경우 입력창에 포커스를 설정.초기 코드: 클래스형 컴포넌트와 상태 관리먼저 기본적인 컴포넌트를 작성합니다.src 디렉터리 아래에 ref 디렉터리를 만들고, ValidatePa..

코딩/리액트 2024.11.19

[새싹 성동 2기] 상태 내리기와 상태 올리기(state)

1. 상태 내리기상태 내리기는 부모 컴포넌트의 상태를 자식 컴포넌트로 전달하는 방식입니다.부모 컴포넌트의 상태를 자식 컴포넌트가 props를 통해 받아 사용합니다.부모의 상태가 변경되면 부모와 해당 상태를 사용하는 모든 자식 컴포넌트가 다시 렌더링됩니다.예제 코드: 두 자식 컴포넌트에서 상태를 계산하기 import { useState } from "react";// 부모 컴포넌트 정의function Parent() { const [number, setNumber] = useState(0); // 상태 값 정의 return ( {/* 부모 상태를 직접 보여줌 */} 입력값: {number} {/* 상태를 변경하는 입력창 */} setNumber(e.targe..

코딩/리액트 2024.11.19

[새싹 성동 2기] 리액트 이벤트 핸들링 사용법과 예시

1. 리액트 이벤트 사용 시 주의사항#1 이벤트 이름이벤트 이름은 카멜 케이스로 작성해야 합니다.onclick (x) OnClick (x) onClick (o)onkeyup (x) OnKeyUp (x) onKeyUp (o)  #2 이벤트 핸들러JSX에서 이벤트 핸들러는 자바스크립트 코드가 아닌 함수 형태로 전달해야 합니다. // (x) alert('hello')}> // (o) ⇐ 함수를 화살표 함수로 직접 정의const handleClick = () => alert('hello'); // (o) ⇐ 외부에 정의한 함수 이름을 전달매개변수가 필요한 경우:const handleClick = (message) => alert(message); handleClick("Hello")} />이벤트 객체의 ..

코딩/리액트 2024.11.19

[새싹 성동 2기] 리액트 상태(state) 에 대하여

리액트(React)는 상태(state)를 통해 컴포넌트의 동적인 동작을 가능하게 합니다. 상태는 일반 변수와 달리 변경 시 컴포넌트를 리렌더링하여 사용자 인터페이스(UI)에 즉각적으로 반영됩니다. 이 글에서는 상태의 정의, 클래스형 및 함수형 컴포넌트에서 상태를 관리하는 방법, 그리고 상태 관리 시 주의사항을 살펴보겠습니다. 1. 상태(state)란?상태는 컴포넌트 내부에서 읽고 업데이트할 수 있는 데이터입니다. 리액트는 상태가 변경될 때 컴포넌트를 자동으로 리렌더링합니다.⚠ 중요: 상태 변수는 일반 변수처럼 직접 수정할 수 없으며, 반드시 리액트가 제공하는 setState 메서드 또는 useState 훅을 사용해 업데이트해야 합니다.클래스형은 setState, 함수형은 useState가 반환하는 업데이..

코딩/리액트 2024.11.19

[새싹 성동 2기] React로 신호등 컴포넌트 만들기

React를 사용하여 간단한 신호등(Traffic Light) 컴포넌트를 만드는 방법을 소개합니다. 이 글에서는 여러 개의 컴포넌트를 만들고, 객체 배열을 활용하여 데이터를 출력하고, 동적인 스타일링을 적용하여 신호등의 색깔을 변경하는 기능까지 구현해보겠습니다. 1. 신호등 컴포넌트 만들기이제 신호등(Traffic Light) 컴포넌트를 만들어봅니다. 신호등은 빨간색, 초록색, 노란색 원을 출력하고, 각 원의 크기와 색상을 부모 컴포넌트로부터 전달받습니다.먼저 간단한 디자인부터 시작하겠습니다.function App() { return ( );}export default App;위와같이 나오는 것을 볼 수 있습니다. 이제 디자인은 되었으니 이를 컴포넌트를 ..

코딩/리액트 2024.11.18

[새싹 성동 2기] 리액트 - 웹 및 사용자 인터페이스를 위한 라이브러리

리액트(React)는 SPA(Single-Page Application) 개발을 손쉽게 도와주는 JavaScript 라이브러리입니다. UI를 컴포넌트 단위로 개발하며, 웹 애플리케이션뿐만 아니라 네이티브 앱 개발에도 사용됩니다.이 글에서는 SPA와 MPA의 차이, 리액트를 이용한 기본 앱 개발, 그리고 프로젝트 초기화를 도와주는 도구인 CRA(Create-React-App) 및 Next.js를 활용한 앱 제작 방법을 소개합니다.MPA와 SPA: 차이점 및 장단점 MPA (Multi-Page Application)특징MPA는 요청마다 새로운 HTML 페이지를 서버에서 로드하는 전통적인 웹 애플리케이션 방식입니다.장점SEO(검색엔진 최적화)에 유리초기 로딩 속도가 빠름기능이 독립적이고, 다양한 툴과 쉽게 연..

코딩/리액트 2024.11.15