인프런 커뮤니티 질문&답변

김동환님의 프로필 이미지
김동환

작성한 질문수

따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]

검색기능 문의

작성

·

138

0

1)검색기능에서 텍스트가 변경될 때마다 axios post로 데이터를 서버쪽으로 전송하고 있습니다. 

client쪽에선 매번  rerendering 되는것이고, 서버쪽에선 매번 조회하는건데 성능상에선 괜찮은걸까요??

혹시나 더 나은 방법이 있을런지요??

2)검색기능 시 MongoDB에서 Control Search Result with Weight 문서를 보아도 잘 이해가 되지 않는 부분이 있습니다. 

weight에 따라서 조회결과값의 순서가 달라지는걸까요??

예를 들어서, weight를 주지 않았을 때 1 - 2 - 3 - 4 로 조회되는게

weight를 주면 2 - 3 - 1 - 4 조회되는걸까요?

답변 1

0

John Ahn님의 프로필 이미지
John Ahn
지식공유자

1.아 실무에서 쓸때는 너무 많은 request를 던질것 같을때는
주로 debounce 기능을 붙여서 사용할때가 많습니다.

더같은 경우는 lodash에서 제공하는 걸 주로 사용하는데요 
https://lodash.com/docs/4.17.15

여기들어가시면 debounce 설명 부분이 있습니다 ! 

원리는  현재는 typing을 할때마다  function을 작동시키지만 debounce를 사용하면 

시간을 설정하여서 function 작동한 후에 그 시간 설정 한 후 이후에 다시 function을 작동하게 만들어서 
request 횟수를 줄여줍니다 

2. weights은 어떠한 필드를 더욱 강조해서 검색을 해서 찾을지를 지정해줍니다.

그래서 숫자가 클수록 그 부분을 더욱 집중해서 검색을 하겠죠 

어떤 부분에 wight을 10 주고  다른 부분에 weight을 5를 주면     10을 준것이 5를 준것에 2배더 강조가 되서 검색이 됩니다. 

weight을 주지 않는다면 다 기본으로 값이 1이 되기에 다 평등하게 검색이 들어가게 됩니다 ~ !  

수고하세요 ~ 

김동환님의 프로필 이미지
김동환

작성한 질문수

질문하기