728x90
๋ฐ˜์‘ํ˜•

Computer Science/Front-end 3

[react] react-query: refetch์—๋„ status๊ฐ€ ๊ณ„์† success์ธ ์ด์œ ?

react-query์—์„œ query๋ฅผ refetchํ•  ๋•Œ status๊ฐ€ idle๋ถ€ํ„ฐ ๋œจ๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ success๋ถ€ํ„ฐ ๋œจ๋Š” ๊ฒฝ์šฐ.. ์™œ๊ทธ๋Ÿด๊นŒ?? (status๋ฟ๋งŒ ์•„๋‹ˆ๋ผ isLoading์ด๋‚˜ isFetching๊ณผ ๊ฐ™์€ ์ƒํƒœ๋„ true๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ false๋กœ ๋œฌ๋‹ค.) refetchOnMount: true, keepPreviousData: false ๋กœ ๋‹ค ์„ค์ •ํ–ˆ๋Š”๋ฐ๋„ ๋ง์ด๋‹ค. ํ•ด๋‹น ์ƒํ™ฉ ์žฌํ˜„ useQuery๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ data fetch any event์— ์˜ํ•ด ํ•ด๋‹น data ๋‹ค์‹œ refetch ์ฝ˜์†”์— ๋กœ๊ทธ ์ฐ์–ด๋ดค์„๋•Œ data์˜ status: success ๋ถ€ํ„ฐ ์‹œ์ž‘ (์•„๋ž˜ ์ฝ˜์†” ์บก์ณ ์‚ฌ์ง„์—์„œ ๋งจ ๋งˆ์ง€๋ง‰ ์ค„๋งŒ ๋œธ) ๋‚ด๊ฐ€ ์˜ˆ์ƒํ–ˆ๋˜ behavior : status: idle๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ idle ->..

[javascript][typescript] default export vs export ~

javascript, typescript๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด ๋ชจ๋“ˆ์„ ๋งŽ์ด ๋งŒ๋“ค๊ฒŒ ๋˜๊ณ  ๊ทธ๋•Œ๋งˆ๋‹ค ํŒŒ์ผ ํ•˜๋‹จ์—๋Š” "export default ~" ํ˜น์€ "export const ~" ๋“ฑ์˜ export ๋ฌธ๋ฒ•์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค. ์ด๊ธ€์€ ๋ฌด์ง€์„ฑ์œผ๋กœ export ํ•˜๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•œ ๊ธ€์ด๋‹ค. export์—๋Š” default export์™€ named export๊ฐ€ ์žˆ๋‹ค 1. default export - ํŒŒ์ผ๋‹น ์ตœ๋Œ€ 1๊ฐœ์˜ default export๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ - ๋ณดํ†ต ํŒŒ์ผ ๋‚ด์—์„œ ํ•œ๊ฐœ๋งŒ exportํ•  ๋•Œ vs ๋Œ€ํ‘œ๋กœ exportํ•  ๊ฒƒ์ด ์žˆ์„ ๋•Œ ๋งŽ์ด ์‚ฌ์šฉ - ํ•ด๋‹น ๋ชจ๋“ˆ์—๋Š” ๊ฐœ์ฒด๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์˜๋ฏธ - importํ•  ๋•Œ ์ค‘๊ด„ํ˜ธ{} ์—†์ด ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Œ - ์œ„์™€ ๊ฐ™์ด exportํ•  ๊ฒฝ์šฐ importํ•  ๋•Œ ์•„๋ฌด ์ด..

[React] useEffect์˜ dependency ์—ญํ• 

useEffect๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด, dependency์— ๋นˆ ๋ฐฐ์—ด์„ ๋„ฃ๋Š” ๊ฒฝ์šฐ๋„, ์ผ๋ถ€ state๊ฐ’๋“ค์„ ๋„ฃ๊ธฐ๋„ํ•˜๊ณ , ํ˜น์€ dependency๋ฅผ ์ƒ๋žตํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ์ด ์…‹์˜ ์ฐจ์ด๋ฅผ ์•Œ๊ณ ์ž ํ•œ๋‹ค. ๋จผ์ € dependency๋ฅผ ์•„์˜ˆ ์ƒ๋žตํ•˜๋Š” ๊ฒฝ์šฐ์ด๋‹ค. useEffect(() => {}); dependency๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ์ œ์ผ ์ฒ˜์Œ ๋ Œ๋”๋ง ํ•  ๋•Œ ํ•œ๋ฒˆ ๋ถˆ๋ฆฌ๊ณ , ๊ทธ ๋’ค๋กœ ์–ด๋–ค ์ž‘์€ state๋“ค์ด๋‚˜ ์š”์†Œ๋“ค์ด ๋ณ€ํ™”ํ•  ๋•Œ๋งˆ๋‹ค ๊ณ„์† ๋ถˆ๋ฆฐ๋‹ค. ์ฆ‰, ๋ถˆํ•„์š”ํ•œ ์ฝœ์ด ๋งŽ์•„์ง„๋‹ค. (์œ„ ํ˜•ํƒœ๋Š” ๊ฑฐ์˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค) ๋‹ค์Œ์€ dependency๋กœ ๋นˆ ๋ฐฐ์—ด์ด ๋“ค์–ด๊ฐ€๋Š” ๊ฒฝ์šฐ์ด๋‹ค. useEffect(() => { },[]); ๋ Œ๋”๋ง ํ›„์— ๋”ฑ ํ•œ ๋ฒˆ๋งŒ ์‹คํ–‰์‹œํ‚ค๊ณ  ์‹ถ์„ ๋•Œ ์œ„์™€ ๊ฐ™์ด ์ž‘์„ฑํ•œ๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ ๋ฐฐ์—ด์— ๋ณ€์ˆ˜๋“ค์„ ๋„ฃ๋Š” ๊ฒฝ์šฐ์ด๋‹ค. cons..

728x90
๋ฐ˜์‘ํ˜•