일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- ubuntu
- display
- terminal
- HTML
- Absolute
- javascript
- 조건문
- object
- STYLE
- function
- LIKELION
- false
- True
- API
- 선택자
- js
- 변수
- array
- Project
- 리액트
- CSS
- block
- boolean
- Inline
- 멋쟁이사자처럼
- 선언
- 프론트엔드스쿨
- http
- position
- react
- Today
- Total
목록React (6)
Jeden Tag, aufrichtig und lustig.
1. 커스텀 훅(Custom Hooks)이란? 커스텀 훅은 React에서 로직을 재사용하기 위한 기능이다. React 컴포넌트는 상태(state)와 생명주기(lifecycle) 메서드를 가지고 있지만, 특정 로직을 다른 컴포넌트에서도 재사용하고 싶을 때 커스텀 훅을 활용할 수 있다. 커스텀 훅은 use 접두사로 시작하는 함수로 구성됩다. 예를 들어, useEffect는 React에서 제공하는 기본 훅이며, 컴포넌트의 부수 효과를 처리하는 로직을 담당한다. 마찬가지로 개발자가 직접 커스텀 훅을 만들어 필요한 로직을 작성할 수 있다. 커스텀 훅을 사용하면 로직을 분리하여 컴포넌트를 더 간결하고 읽기 쉽게 유지할 수 있으며, 로직의 재사용성과 테스트 용이성도 향상된다. 2. 커스텀 훅 사용하는 이유 커스텀 훅..
프로젝트를 진행 할 때 form작업을 자주 하게 된다. CDN을 활용해서 리액트에서 폼을 만들 때 유용한 정보를 아래에 정리해보았다. Form submit 사용자가 폼을 제출 할 때 특정 사이트(ex.여기어때)로 연결하여 검색값을 받아 올 수 있게 하려면 input의 name 프로퍼티를 활용 할 수 있다. input에 name 속성을 활용 할 때는 key를 설정해야한다. 설정하는 key 이름은 폼을 제출(submit) 할 때 실행되는 action 주소의 쿼리스트링에 따라 달라진다. 아래와 같은 경우는 물음표('?') 뒤 쿼리스트링이 'keyword'이기 때문에 input name프로퍼티의 value값을 'keyword'로 설정하면 된다. 이렇게 하면 쿼리스트링의 key값으로 keyword가 지정되고 va..
1. 발생 이슈 새로운 블록이 추가되는 기능을 구현하던 도중 컴포넌트의 key값과 관련하여 문제가 발생했다. 블록 추가 버튼을 눌렀을 때 기대했던 것은 한개의 블록이 추가되는 것이었는데, 실제로는 동일한 idx값을 가진 두 개, 세 개, 때로는 네 개의 다수의 블록이 동시에 추가되는 현상이 발생했다. 빠르게 버튼을 연타하지도 않았기 때문에 블록의 상태 관리와 추가되는 새 블록의 상태관리 로직을 살펴보고 콘솔로도 확인을 해보며 디버깅을 했다. 2. 문제 이유 블록이 렌더링 될 때마다 key값이 새로 할당 되는 로직이 문제였다. 리액트에서는 key라는 속성을 활용해서 자식 컴포넌트들을 유니크하게 식별한다. 그렇기 때문에 렌더링할 때마다 모든 블록 컴포넌트의 key 값이 변경 되면 리액트가 올바르게 컴포넌트를..
최근에 React로 프로젝트를 진행하며 PropTypes을 사용해봤다. 사용하면서 알게되고 느낀점을 정리해보고자 한다. 1. 프롭타입을 사용한 이유 React로 개발하면서, 프롭스를 활용하여 데이터를 전달하였다. 그런데, 프롭스가 객체 타입인 줄 알았는데 문자열 형태로 전달되는 등 자바스크립트의 동적인 연산 등으로 예상치 못한 데이터 타입이 전달될 때 렌더링이 안되는 문제가 종종 발생했다. 타입스크립트를 적용하여 타입을 명시할까 고민도 해봤지만 팀내에서 타입스크립트를 활용해본 팀원이 없었기에, 팀원 모두 프로젝트 도중 배워서 적용하는 것은 어려울 것 같았다. 다른 방법을 찾다보니 타입스크립트보다 비슷한 용도로 활용할 수 있으며, 쉽게 사용가능한 PropTypes을 알게 되어 프롭타입이 중요하다고 생각한 ..
state는 리액트에서 많이 사용 된다. 비중 있게 사용되는 만큼 사용 이유와 사용 방법을 정리해 보았다. state 사용 이유 데이터를 저장하는 방법에는 state를 사용하는 방법 외 변수에 저장하는 방법도 존재한다. 하지만 변수는 값이 변경되는 경우 html에 자동으로 반영이 안되는 반면 state는 값이 바뀌면 html이 자동으로 재렌더링을 한다. 이와 같은 차이점으로 자주 변경이 되는 html요소는 state로 값을 저장하여 데이터바인딩을 하는 것이 좋다. state 사용 방법 1. import state는 import를 해야 사용 할 수 있다. 보통 useState 단어를 입력하면 아래와 같이 상단에 자동으로 import 된다. ->import {useState} from 'react' 2. 구..
JSX 문법은 자바스크립트 파일 내에서 html을 표현할 때 사용되는 문법이다. 리액트에서 많이 사용되는 JSX 문법은 아래와 같다. 1. className JSX 문법과 html 문법의 차이점 중에 하나로 class를 부여할 때 'className'으로 카멜케이스를 활용해서 사용 해야 한다. 이를 사용해서 app.js파일에서 클래스 이름을 부여 하면 app.css에서 css하는데 활용 할 수 있다. *css파일은 app.js파일 내에 import 해야 적용할 수 있다. 2. 데이터바인딩시 {중괄호} 활용 리턴 문 밖에서 정의한 변수를 리턴안에서 활용(데이터 바인딩) 하고 싶다면 중괄호 안에 변수를 넣으면 적용 가능하다. 변수는 컨텐츠 내용 넣을 때나 클래스 이름 작명 할 때도 범용적으로 사용가능하다 i..