inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

만들면서 배우는 리액트 : 기초

14 useState로 상태 만들기

state 관련 질문이용~

392

wyswhsl21

작성한 질문수 6

2

1회독 돌리고 천천히 다시 하나하나 짚어보면서 듣고 있는데요!

저기에서 const counter = counterState[0];

const Setcounter = counterState[1];

값이라고 되어있는데요. 단순히 counter와 setCounter 값을 쓰기 위해서 두개가 필요하니깐 [0],[1] 을 쓴건가요?

아니면 console.log에 counterState 를 찍으면 값이 나오는거 보고 인덱스 번호를 찍으신건가요 ?

저게 너무 헷갈려가지고 갑자기 왜 [0] 번째 [1] 번째가 되는지 이해가 안되더라고요 ㅠㅠ

강의 잘 듣고 있습니다!

const [counter,setCounter] = React.useState(초기값)

 

state javascript react

답변 1

2

진유림

좋은 질문이에요~
React.useState(초기값) 이 반환하는 값이 길이가 2인 Array입니다.

(useState의 스펙이라고 생각하시면 되어요)

 

const stateResponse = useState();

console.log(stateResponse);

 

를 직접 찍어보시면 Array(2) 의 값이 나오는걸 보실 수 있을거예요.

여기서 첫 번째 인자는 state 값 자체, 두 번째 인자는 state를 변경할 수 있는 setState함수가 반환되어요.

 

그래서

const counter = stateResponse[0]; // 첫 번째 인자 빼오기

const setCounter = stateResponse[1]; // 두 번째 인자 빼오기

이렇게 쓸 수도 있고, ES6의 새로운 문법을 사용해

const [counter, setCounter] = stateResponse; // 첫 번째, 두 번째 인자 바로 빼오기

로 쓸 수도 있습니다.

API 적용 안되는 코드 수정 방법입니다.

0

85

1

고양이 이미지가 엑박이 뜨네요

0

64

1

npx 명령어 사용 불가

1

86

1

const 변수와 컴포넌트의 차이

0

94

1

강의노트

0

145

1

vite로 리액트 빌드한 후 깃허브에 배포하는 방법

0

340

1

빌드할때 dist 폴더가 만들어지는데요,

0

797

1

js파일 업로드 요청

0

139

1

변경된 api 사용시 text 안나오는 문제

0

150

1

메인글자수정...

1

282

3

디렉터리 구조 관련하여 참고할 만한 예시가 있을까요?

1

315

1

https://cataas.com/undefined 로 나오는데 왜그런건가요?

1

609

4

고양이 사진이 깨져요.ㅜㅜ

2

363

3

강의 노트 위치를 모르겠습니다

1

347

1

깃 강의노트 어디서 볼 수 있나요?

1

382

2

이해가 안되는 부분이 있어요

1

366

1

api가 안불러와지네요...

1

671

4

진유림 선생님 너무 궁금해서 질문드립니다 ㅜ

1

337

2

react에서 컴포넌트 만들 때 대문자를 쓰는 이유

2

1162

2

https://cataas.com/ 여기 도메인이 죽어서 이미지가 보이지 않습니다 ㅠ

1

335

2

index.js 내용이 바꼈네용

1

321

2

프로젝트에 사용할 상태와 로직 관리 라이브러리 훅 사용 질문입니다.

1

263

2

html 코드 오류

1

464

2

고양이 이미지 깨져요

1

343

2