2021. 9. 13. 07:27ใ๐ TIL
๋ฆฌ์กํธ์์ '์ ์ '์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํ๋ ๋ฐฉ๋ฒ์ ์ด๋ ต์ง ์๋ค.
์ฌ๊ธฐ์ '์ ์ '์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ์ ๋ก๋ ํ๋ค๋ ๊ฒ์, ๋๋ฉํ์ด์ง์ ๊ณ ์ ๋ ์ด๋ฏธ์ง์ฒ๋ผ ๋ฑํ ๋ณ๊ฒฝ๋ ํ์๊ฐ ์๋ (์ ์ ์ธ) ์ด๋ฏธ์ง๋ฅผ ๋ปํ๋ค.
์ฌ์ฉํ ์ด๋ฏธ์ง๋ฅผ import ํ ํ, ํด๋น ๋ณ์(poster) ๋ฅผ img ํ๊ทธ์ src์ ๋ฃ์ด์ฃผ๊ธฐ๋ง ํ๋ฉด ๋๋ค.
์ด๋ฏธ ๊ฒฝ๋ก๋ฅผ from ์์ ์ ์ธํ์ผ๋ ๊ตณ์ด src prop ์ ๊ฒฝ๋ก๋ฅผ ๋ค์ ์ธ ํ์์์ด ๋ณ์๋ง ์ฌ์ฉํ๋ฉด ๋๋ค.
import poster from "../images/์ฌ์.png"
...
<img id="poster" src={poster} alt="์ฌ์"/>
...
๐ React ์์ (๋์ ์ผ๋ก) ์ด๋ฏธ์ง ๋ก๋ํ๋ ๋ฐฉ๋ฒ (require(...).default)
๋์ ์ผ๋ก ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํ ๊ฒฝ์ฐ, ์ด ๋ฐฉ๋ฒ์ ๊ทธ๋ค์ง ์ข์ง ์๋ค.
๋ง์ฝ ์ํฉ์ ๋ฐ๋ผ 10๊ฐ์ ์๋ก ๋ค๋ฅธ ์ด๋ฏธ์ง๋ฅผ ๋ก๋ํด์ผํ๋ค๋ฉด, poster ์ด๋ฏธ์ง๋ฅผ import ํ๋ฏ์ด 10๊ฐ์ ์๋ก ๋ค๋ฅธ import ๋ณ์๋ฅผ ๋ง๋ค์ด์ผ ํ๊ธฐ ๋๋ฌธ์ด๋ค.
์ฐ์ ์ฌ์ฉํ ์ด๋ฏธ์ง์ ๊ฒฝ๋ก๋ฅผ require()์ ์ธ์๋ก ๊ฐ์ ธ์จ๋ค.
๊ทธ๋ฆฌ๊ณ ์์ง ์๊ณ .default ๋ฅผ require() ํจ์์ ๋ถ์ฌ์ค๋ค.
<img
src={require(`../images/${imageName}.png`).default}
alt={imageName}
/>
์ด ๋ฐฉ๋ฒ์ ๋ณ๋๋ก ์ด๋ฏธ์ง๋ฅผ import ํ ํ์์์ด ๊ณง๋ฐ๋ก img ํ๊ทธ์ src์ ์ ์ฉํ ์ ์๋ค.
require() ์ default ํจ์ ์์ด ๊ฒฝ๋ก๋ง์ ๋ฐฑํฑ ํ๊ธฐ๋ฒ์ผ๋ก ์ฌ์ฉํ๋ฉด, '์๋ฐ' ์ด ๋จ๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
default ์์ด require() ๋ง ์ฌ์ฉํด๋ ์๋ฐ์ด ๋จ๋๋ฐ, ์ด๋ require() ํจ์๊ฐ ๋ฆฌํดํ๋ ๊ฒ์ด object ์ด๊ธฐ ๋๋ฌธ์ด๋ค.
.default ์ค์ ์ ๋ถ์ฌ์ฃผ๋ฉด ์ด๋ฏธ์ง์ ๊ฒฝ๋ก๋ฅผ ๊ฐ์ ธ์ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๋ผ ์ ์๋ค.
'๐ TIL' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
210915 ๊ฐ๋ฐ๊ธฐ๋ก: (0) | 2021.09.15 |
---|---|
210912 ๊ฐ๋ฐ๊ธฐ๋ก: ๋ฆฌ์กํธ, ์ผํญ์ฐ์ฐ์ ์์ด jsx ๊น๋ํ ๋ฆฌํด (0) | 2021.09.13 |
210910 ๊ฐ๋ฐ๊ธฐ๋ก: JSON ์ค๋ฐ๊ฟ์ ์ต๊ณ ์ ์ ํ (1) | 2021.09.13 |
210909 ๊ฐ๋ฐ๊ธฐ๋ก: src์ dist ์ฐจ์ด (0) | 2021.09.09 |
210908 ๊ฐ๋ฐ๊ธฐ๋ก: JSON ์ ์ค๋ฐ๊ฟ ๋ฌธ์ (0) | 2021.09.09 |