Object.values๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์šฉ ์•ฝ๊ด€ ๋™์˜ ๊ธฐ๋Šฅ ๊ตฌํ˜„

Issue ํ”„๋กœ์ ํŠธ ๋„์ค‘ ํšŒ์› ๊ฐ€์ž… ์ฐฝ์ด ๋œจ๊ธฐ ์ „์— ์ด์šฉ ์•ฝ๊ด€ ๋™์˜ ์ฐฝ์— ๋Œ€ํ•œ ๋””์ž์ธ ์‹œ์•ˆ์ด ์ถ”๊ฐ€๋˜์—ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์ด์šฉ ์•ฝ๊ด€ ๋™์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ์ง€๋งŒ, ์ฒดํฌ ๋ฐ•์Šค ๊ด€๋ จ ๊ธฐ๋Šฅ์€ ์•ž์œผ๋กœ๋„ ๋งŽ์ด ์“ฐ์ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฒˆ ๊ธฐํšŒ์— ์Šค์Šค๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด๋ณด๊ธฐ๋กœ ํ•˜์˜€๋‹ค. Code ์šฐ์„ , ๊ฐ ์ฒดํฌ ๋ฐ•์Šค์˜ ์ฒดํฌ ํ™œ์„ฑ์— ๋Œ€ํ•œ ์—ฌ๋ถ€๋ฅผ ์ €์žฅํ•ด์ฃผ์–ด์•ผ ์ด์šฉ ์•ฝ๊ด€ ๋™์˜ ์ฐฝ์—์„œ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฐ ์ฒดํฌ ๋ฐ•์Šค์˜ Key๊ฐ’์— ๋Œ€ํ•œ ์ฒดํฌ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” Boolean Value๋ฅผ ์ง€๋‹Œ ๊ฐ์ฒด๋ฅผ state๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™” ํ•˜์˜€๋‹ค. const [checkInfo, setCheckInfo] = useState({ webAccessCheck: false, privateInfoCheck: false, a..

React 2022. 1. 26. 17:01
๋ฆฌ์•กํŠธ ์ƒ์—์„œ Intersection Observer API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Infinite Scroll ๊ธฐ๋Šฅ ๊ตฌํ˜„

Infinite Scroll ๊ธฐ๋Šฅ์˜ ํ•„์š”์„ฑ ์›๋ž˜๋Š” ์ง„ํ–‰ํ•˜๋˜ ํ”„๋กœ์ ํŠธ์˜ ๋ฉ”์ธ ํŽ˜์ด์ง€ ๋‚ด์—์„œ ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„์—์„œ ๊ฐ€์ ธ์™€ ๋žœ๋”๋งํ•˜๋Š” ๋ฐฉ์‹์€ Carousel Slide ์˜€์ง€๋งŒ ๊ด€๋ จ ๋””์ž์ธ ์‹œ์•ˆ์ด ๋Œ€ํญ ์ˆ˜์ •๋˜์—ˆ๋‹ค. ์ด์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๋ฐฉ์‹์ด ํŠน์ • ์ง€์ ์— ๋„๋‹ฌํ–ˆ์„ ๋•Œ, ์ด๋ฅผ ์ธ์‹ํ•ด ์„œ๋ฒ„์—์„œ ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” Infinite Scroll ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ•˜์˜€๋‹ค. ์ฒ˜์Œ์—๋Š” ํŠน์ • ์ง€์ ์„ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด ScrollingElement ๋‚ด์˜ scrollTop๊ฐ’์„ ์‚ฌ์šฉํ•˜์˜€์ง€๋งŒ, ์Šคํฌ๋กค์ด ๋˜๋Š” ์†๋„์— ๋”ฐ๋ผ ๊ฐ’์ด ํ•ญ์ƒ ๋ฐ”๋€Œ๋Š” ์ด์Šˆ์™€ scroll event ์ž์ฒด์˜ ์„ฑ๋Šฅ ์ €ํ•˜ ๋ฌธ์ œ(๋™๊ธฐ์ ์œผ๋กœ ์ด๋ฒคํŠธ ๋ฐœ์ƒํ•  ๋•Œ๋งˆ๋‹ค ํ˜ธ์ถœ๋˜๋Š” ์ฝœ๋ฐฑ ํ•จ์ˆ˜)๋กœ ์ธํ•ด Intersection Observer API๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด๊ธฐ๋กœ ํ–ˆ๋‹ค. In..

React 2021. 12. 24. 16:52
์„œ๋ฒ„์—์„œ ๊ฐ€์ ธ ์˜จ ๋ฐ์ดํ„ฐ๊ฐ€ redux store์— ์ €์žฅ๋˜๋Š” ์•Š๋Š” ๋ฌธ์ œ_immer produce

๋ฌธ์ œ ํ˜„์žฌ mainPage redux store์—๋Š” ํฌ๊ฒŒ ์ฝ˜ํ…์ธ ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” contents์™€ ์‚ฌ์šฉ์ž ๋ฐฉ์„ ๋ณด์—ฌ์ฃผ๋Š” roomList๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋‹ค. redux-saga๋ฅผ ํ†ตํ•ด ์„œ๋ฒ„์™€ API ํ†ต์‹ ์„ ํ•˜์—ฌ ๊ฐ๊ฐ์˜ ๋ฐฐ์—ด ๋‚ด์— ๋ฐ์ดํ„ฐ๋“ค์„ ์ ์žฌํ•ด์ฃผ๋Š” ๊ณผ์ •์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋Š”๋ฐ, contents์— ํ•ด๋‹นํ•˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์€ ์„œ๋ฒ„์—์„œ ๋ฌธ์ œ ์—†์ด ๊ฐ€์ ธ์™€ ์ €์žฅ๋˜๋Š” ๋ฐ˜๋ฉด์—, roomList์— ํ•ด๋‹นํ•˜๋Š” ๋ฐ์ดํ„ฐ๋“ค์€ ์ €์žฅ๋˜์ง€ ์•Š์•˜๋‹ค. ์ฒ˜์Œ์—๋Š” ์„œ๋ฒ„์™€ API ํ†ต์‹ ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ ์ค„ ์•Œ๊ณ  Promise ํ›„์† ๋ฉ”์„œ๋“œ์ธ then ๋ฉ”์„œ๋“œ ๋‚ด์—์„œ ์ฝ˜์†”์„ ์ฐ์–ด๋ดค๋Š”๋ฐ, ๋ฌธ์ œ ์—†์ด roomList์— ํ•ด๋‹นํ•˜๋Š” ๋ฐ์ดํ„ฐ๋“ค๋„ ๊ฐ€์ ธ์™”๋‹ค. ๋ฌธ์ œํ•ด๊ฒฐ ํ•œ์ฐธ์„ ํ•ด๋‹น Blocker์— ๋Œ€ํ•ด์„œ ๊ณ ๋ฏผํ•œ ๊ฒฐ๊ณผ, ๋ฆฌ์•กํŠธ ์ƒ์—์„œ ๋ถˆ๋ณ€์„ฑ์„ ์ง€์ผœ์ฃผ์ง€ ๋ชปํ•ด ๋ฐœ์ƒํ•œ ๋ฌธ์ œ..

React 2021. 12. 24. 16:11
์ฟผ๋ฆฌ ๋ฌธ์ž์—ด ์ธ์ฝ”๋”ฉํ•˜๊ธฐ(ํ•œ๊ธ€ ์ฃผ์†Œ ๊นจ์ง ํ˜„์ƒ)_encodeURI

๋ฌธ์ œ ํ”„๋กœ์ ํŠธ ๋„์ค‘ ๊ฒ€์ƒ‰์ฐฝ์— ์˜์–ด๋ฅผ ์น˜๋ฉด ๋ณ„ ๋ฌธ์ œ ์—†์ด ์ฟผ๋ฆฌ ๊ฐ’์„ API path์— ๋‹ด์•„ ์„œ๋ฒ„์—์„œ ๊ด€๋ จ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฌด์‚ฌํžˆ ๊ฐ€์ ธ์˜ค์ง€๋งŒ, ํ•œ๊ธ€์„ ์น  ๊ฒฝ์šฐ์—๋Š” ํ•ด๋‹น keyword์˜ ๊ฐ’์ด ๊นจ์ง„ ์ƒํƒœ๋กœ ์ฟผ๋ฆฌ ๊ฐ’์„ ์„œ๋ฒ„์— ๋ณด๋‚ด ์ œ๋Œ€๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค์ง€ ๋ชปํ•˜๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๋‹ค. ๋ฌธ์ œํ•ด๊ฒฐ_encodeURI https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/encodeURI encodeURI() - JavaScript | MDN encodeURI() ํ•จ์ˆ˜๋Š” URI์˜ ํŠน์ •ํ•œ ๋ฌธ์ž๋ฅผ UTF-8๋กœ ์ธ์ฝ”๋”ฉํ•ด ํ•˜๋‚˜, ๋‘˜, ์…‹, ํ˜น์€ ๋„ค ๊ฐœ์˜ ์—ฐ์†๋œ ์ด์Šค์ผ€์ดํ”„ ๋ฌธ์ž๋กœ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. developer.mozilla.org The encodeURI()..

JS 2021. 12. 24. 15:39
๊ณต์ง€์‚ฌํ•ญ
์ตœ๊ทผ์— ์˜ฌ๋ผ์˜จ ๊ธ€
์ตœ๊ทผ์— ๋‹ฌ๋ฆฐ ๋Œ“๊ธ€
Total
Today
Yesterday
๋งํฌ
TAG
more
ยซ   2024/10   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
๊ธ€ ๋ณด๊ด€ํ•จ