inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전 리액트 프로그래밍

reselect로 선택자 함수 만들기

[getFriends,getAgeLimit] 질문 있습니다!

151

Prov

작성한 질문수 18

0

selector.js 부분에서


//reselect 함수 사용
export const getFriendsWithAgeLimit = createSelector(
[getFriends, getAgeLimit],

//선택자 함수
//위에서 반환하는 값(getFriends,getAgeLimit) 을 받아서 작성
//해당 함수는 friends 와 ageLimit이 변경되지 않았더라면 filter를 사용하지 않고 이전의 연산 값을 재사용.
(friends, ageLimit) => {
console.log("getFriendsWithAgeLimit called ")
console.log(friends, ageLimit);
return friends.filter(item => item.age <= ageLimit)
}
);

1.createSelector의 첫 번째 인자로 [getFriends, getAgeLimit]은 단순히 변수로 사용하는 역할만 하는건가요? 첫 번째 인자가 어떤 역할을 하는지 이해가 잘 안갑니다 ㅠㅠ

2.(friends, ageLimit) 의 인자값은 위에서 getFriends와 getAgeLimit을 뜻하는건가요 ?! 

react redux

답변 1

1

이재승

안녕하세요

createSelector 에는 여러 개의 매개변수를 입력할 수 있고 마지막에 입력하는 함수는 특별한 역할을 합니다
* 마지막 함수가 반환한 값이 실제로 사용될 값입니다
* 마지막 함수 이전에 작성한 함수들이 반환하는 값은 (순서대로) 마지막 함수의 매개변수로 들어옵니다
* 편의를 위해 위 코드와 같이 배열을 입력할 수 있습니다. 이때는 배열에 있는 함수들이 실행된 후에 반환하는 값이 순서대로 마지막 함수의 매개변수로 들어옵니다.
* getFriendsWithAgeLimit 함수가 여러 번 실행되는 과정에서, 마지막 함수의 모든 매개변수가 변하지 않았을 때는 마지막 함수가 실행되지 않고 캐싱된 값(마지막 함수가 직전에 반환한 값)이 사용됩니다

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

0

499

3

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

0

515

2

setValue 함수 질문 있습니다.

0

840

1

찾아야한다 실습 문의

0

469

1

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

0

470

1

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

0

605

1

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

0

252

1

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

1

1081

2

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

0

370

2

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

0

656

1

match

1

494

1

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

0

286

1

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

0

262

1

saga 문제

0

248

1

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

0

388

2

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

0

202

1

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

0

315

1

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

1

1197

1

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

0

337

1

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

0

207

1

useImperativeHandle 질문 입니다.

0

280

1

컴파일 문의드립니다.

0

202

1

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

0

373

1

Context API vs Redux 사용 빈도

0

211

1