inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전 리액트 프로그래밍

몇 가지 리덕스 사용 팁

action에서 배열 state를 불러올 수 있는 방법이 있을까요?

331

wanjin.lee

작성한 질문수 2

0

안녕하세요. 

createReducer 사용해서 구현하던 중 문제가 발생하여 문의 드립니다.

state에 배열을 넣은 뒤, action에서 필요한 일이 있어 불러오려고 했더니 값이 없다고 뜨더라구요.

예를 들어서

const INITIAL_STATE = { test: [1, 2, 3] }

...

[Types.SetTest]: (state, action) => {

  console.log(state.test)

}

이런 식으로 했는데  로그에 [Proxy, Proxy, Proxy, Proxy] 이렇게 뜨고 값을 가져올 수가 없었습니다.

혹시 어떻게 해야 state 값을 가져올 수 있을까요?

react redux

답변 1

0

이재승

안녕하세요
(중요한 내용은 아니지만) 아마 위 코드처럼 [1, 2, 3] 를 입력했다면 [Proxy, Proxy, Proxy] 로 출력되지는 않을 것 같습니다
객체의 배열을 입력하신 것으로 이해하겠습니다

reducer 내부에서는 immer 가 모든 객체를 proxy 로 만들어서 그렇습니다
(reducer 외부에서)state 값을 사용하는 곳에서는 저렇게(proxy로) 출력되지 않을거에요
reducer 내부는 state 를 변경하는 것이 유일한 목적이라서 문제가 없어보입니다

위 코드에서 아래처럼 입력한다면 1, 2, 3 이 출력될 것 같습니다
console.log(state.test[0], state.test[1], state.test[2]) 

자동완성기능이 안되네요 ..

0

532

3

화면에 에러가나네요 ...

0

538

2

setValue 함수 질문 있습니다.

0

855

1

찾아야한다 실습 문의

0

484

1

훅 기초 익히기 - 배치 처리와 순차적 처리의 차이

0

492

1

cra, next.js 관련 질문 드립니다!

0

613

1

useState 배열 비구조화 문법 질문!

0

260

1

Uncaught TypeError: Failed to execute 'removeChild' on 'Node': parameter 1 is not of type 'Node'

1

1091

2

Saga 오류 이거 혹시 왜이런지 알수 있을까요?

0

379

2

http://localhost:3001/user/search?keyword=u 이걸로 데이터를 보는데 저는 사이트에 연결할 수 없다고 나오네요

0

680

1

match

1

499

1

버튼이 생성되지 않습니다 .

0

288

1

혹시 import 옆에 파일 사이즈 표시 어떻게 하나요?

0

263

1

saga 문제

0

250

1

에러가 발생하는데 이유가뭘까요..?

0

396

2

선생님과 똑같이 했는데 다 rendering 됩니다.

0

209

1

컴포넌트와 컨테이너의 기준

0

322

1

커스텀훅의 개념과 함수차이

1

1204

1

useEffect 실전 활용법(1) 강의에서 질문있습니다.

0

344

1

리덕스, 사가파일들의 관리

0

212

1

useImperativeHandle 질문 입니다.

0

286

1

컴파일 문의드립니다.

0

211

1

React.memo 관련 질문이 있습니다.

0

380

1

Context API vs Redux 사용 빈도

0

218

1