๐Day(49) 75์ผ์ฐจ WE_MOTIVATION_DIARY
- ํ๋ก์ ํธ ์งํํํฉ
- ์ปดํฌ๋ํธ ์นด๋ ๋ณ๋ก ํด๋น ๋ํ ์ผ ์ด๋ฏธ์ง ๋ฐ์์ ๋ณด์ฌ์ฃผ๋ ๊ธฐ๋ฅ ๊ตฌํ
- ์๋จ์ผ๋ก ์ฌ๋ผ๊ฐ๋ gototop ๋ฒํผ๊ณผ ํ ์คํธ ํ์ด๋ผ์ดํธ ๊ธฐ๋ฅ ์ถ๊ฐ
- TODAY I LEARN ERROR ๐ฆ
- map์ ๋๋ฆฐ ์ปดํฌ๋ํธ์ ๋ค๋ฅธ ์ด๋ฏธ์ง, ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ ๋ฟ๋ ค์ค์ผํ๋๋ฐ ๊ฐ์ ์ด๋ฏธ์ง๋ง ๋์ค๋ ๋ฌธ์ ์ ๋ํ ๋ฌธ์ ์ ์ map์ ๊ตฌ์กฐ์์ ๋ฐ๊ฒฌํ์๋ค.
- ํ์ฌ fetch์์ ๋ฐ์ ๋ฐ์ดํฐ๋ฅผ map์ 2๋ฒ ๋๋ฆฌ๋ค ๋ณด๋ div ์์ img๊ฐ ๋ค์ด๊ฐ๋ฒ๋ฆฌ๋ ๋ฌธ์ ๋ ๋ฐ์ํ๋ค๋ ์ ๊น์ง
<script> {productDetailImg.map(data => { const { detailImg } = data; return ( <div> {detailImg.map(data => { return ( <img className='productDetailImage' key={data.detail_id} alt={data.name} src={data.img} onMouseOver={changeDetailProductImage} onMouseLeave={this.hoverOut} /> ); })} </div> ); })} </script>
- HOW TO FIX MY ERROR ๐
- ERROR๋ฅผ ํด๊ฒฐํ KEYWORD ๐
- map์ ์ด ๋๋ฒ, ๋ฉ์ธ ์ด๋ฏธ์ง(div)์ ํ ๋ฒ, ๋ํ ์ผ ์ปดํฌ๋ํธ์ ํ ๋ฒ ๋ฐ๋ก ํด์ค์ผ๋ก์ ๋ฐ์ดํฐ๋ฅผ ๋ฐ๋ก๋ฐ๋ก ๋ฐ์์ฌ ์ ์์๋ค.
- img๊ฐ ์๋ div์ backgroundImage ์์ฑ์ ํตํด์ ๋ฐฐ๊ฒฝ ์ฌ์ด์ฆ, ๋ฐ๋ณต, ์์น ์์ฑ๋ ์ค์ผ๋ก์ ๋ฐ์์จ ์ด๋ฏธ์ง src๋ฅผ ๋ฐ๋ก ๋ฃ์ด ์ค ์ ์์ด๋ค.
<script> <div className='detailImgWrapper'> <div className='productMainImg' style={{ backgroundImage: `url(${productImg})`, backgroundRepeat: 'no-repeat', backgroundSize: 'contain', backgroundPosition: 'center', }} </div> {productDetailImg.map(product => { return ( <ProductDetailCard key={product.detail_id} detailImage={mainImage} name={product.name} /> ); })} </div> </script>
- ๋ชจ๋ฅด๋ ์
- ๋ฌดํ ์คํฌ๋กค์ ๊ณต๋ถํ๊ธฐ ์ ์คํฌ๋กค ๊ด๋ จํ mdn ๊ณต์๋ฌธ์๋ฅผ ์ฝ์ด๋ณด๋ฉด window.scrollTop๊ณผ ๊ฐ์ ์์ฑ ๊ทธ๋ฆฌ๊ณ ํจ๊ณผ์ ๋ํด์
- ๋ฐฐ์ด์
๋ฆฌ์กํธ์์ ์คํฌ๋กค ์ด๋ฒคํธ๋ฅผ ํตํด ๋ฌดํ ์คํฌ๋กค์ ๊ตฌํํ ์ ์๋ ๋ฐฉ๋ฒ์ผ๋ก๋ 1> onScroll ์ด๋ฒคํธ 2> Intersection Observer API๊ฐ ์๋ค๊ณ ํ๋ค. ๋ด์ผ์ ์ด ๋๊ฐ์ง์ ๋ํด ๊ณต๋ถํ ๋ค ๊ธฐ๋ฅ ๊ตฌํ์ ๋ง๋ฌด๋ฆฌํด์ผ๊ฒ ๋ค.
- ์ํ ์ ๊ณผ ๊ฐ์ ํ ์
- ์งง์ง๋ง ์๊ธฐ ์ ์ ๋ค์ด์ด๋ฆฌ๋ฅผ ์ฐ๊ณ ์๊ฑฐ! ์ํ๋ฐ!
- ํ์ฌ ์๊ฐ 2์ 20๋ถ ์ค๋์ ์ผ์ฐ์๊ณ ์ ํ์ผ๋ ์ ๋ ์๊ฐ์ ์์์์ํ๋ฉด์ ํ๋๊ฑฐ๊ฐ๋ค. ๋ด์ผ์ ์ง์๋ง ์์ง๋ง๊ณ ์นดํ๋ ๊ฐ๋ณด๋์งํด์ผ๊ฒ ๋ค. ์ฐ์ ์ค์ํ ๊ฑด ์ผ์ฐ ์ผ์ด๋์ผ๋๊ฑฐ~
- ๋ชฉํ์ ๋ง๊ฐ๊ธฐํ: 2021-10-06
๋ฆฌ์คํธ ํ์ด์ง ํธ๋ฒ ๊ธฐ๋ฅ ๊ตฌํ ๊ฐ๋จํ๊ฒ๋ผ๋ ๋ง์น๊ธฐ => ํ ์ปดํฌ๋ํธ๋ง ์คํ- ๋ฐฑ์๋ ๋ธ๋ก๊น ๋ง์น๊ธฐ => ๊ณ์ ๋ฏธ๋ฃจ๋ ์ค ING
ํ๊ณ ๋ก ์ ๊ณ ์๊ธฐ => ์ปดํ๋ฆฌํธ!
A. ๋จ์ ๊ธฐ๋ฅ, ๋ฌดํ ์คํฌ๋กค ๊ด๋ จ ๊ณต๋ถํด์ ๊ตฌํํด๋ณด๊ธฐ
B. ์ด์ ๋ ธ์ ์ ๋์จ ํค์๋ ์์นจ์ ๊ฐ๋จํ๊ฒ๋ผ๋ ๊ณต๋ถํ๊ธฐ
C. ํ๋ก ํธ ๋ง์น ๋ค ๋ฆฌํฉํ ๋ง ์ peerReview๋ฐ๊ธฐ
D. ๋ฐฑ์๋ ๊ฐ์ 2๊ฐ ๋ณด๊ณ ์ฝ๋ ์ณ์ ๊ฐ ์์ง ์๊ธฐ.
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(๐Day(49) 75์ผ์ฐจ WE_MOTIVATION_DIARY), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@minj9_6/Day49-75์ผ์ฐจ-WEMOTIVATIONDIARY์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค