ํ๋ก ํธ์๋ ๊ฐ๋ฐ/React - ์ด๋ก
11
JSX์ ๋ํ ๊ฐ๋จํ ์ค์ต
1. ๊ฐ์ ์ง๊ธ๊น์ง JSX์ ๋ํ ์ด๋ก ์ ๊ฐ๋จํ๊ฒ ์ ๋ฆฌํ์๋ค. ์ด์ JSX ๋ฌธ๋ฒ์ ์ด์ฉํ ๊ฐ๋จํ ์ค์ต์ ํ๊ณ ์ ํ๋ค. create-react-app ์ ์ด์ฉํ์ฌ, react์ ๋ํ ๊ธฐ๋ณธ์ ์ธ ์ค์ผ๋ ํค ์ฝ๋๋ฅผ ๋ฐ๊ณ ๊ทธ src ํด๋ ๋ฐ์ Chapter_03์ด๋ผ๋ ํด๋๋ฅผ ํ๋ ๋ง๋ ๋ค. ๊ทธ๋ฆฌ๊ณ ์์ ๊ฐ์ด Book.jsx ์ Library.jsx ํ์ผ์ ํ๋์ฉ ๋ง๋ค๊ฒ ๋ค. 2. Book.jsx import React from "react"; function Book (props) { return ( {`์ด ์ฑ
์ ์ด๋ฆ์ ${props.name} ์
๋๋ค.`} {`์ด ์ฑ
์ ์ด ${props.numOfPage}ํ์ด์ง๋ก ์ด๋ค์ ธ ์์ต๋๋ค.`} ); } export default Book; ์ฝ๋์ ๋ํ ์ค๋ช
์ ํ๊ฒ ๋ค. Book์ด..
2024.01.13
ํ๋ก ํธ์๋ ๊ฐ๋ฐ/React - ์ด๋ก
JSX์ ์ฅ์ ๋ฐ ์ฌ์ฉ๋ฒ
1. JSX์ ์ฅ์ โ ๊ฐ๊ฒฐํด์ง ์ฝ๋ > ๋์ ๊ฐ๋
์ฑ > ์ค๋ฅ ์ก๊ธฐ ์ฌ์ ์ ๋ฒ ํฌ์คํ
์์ ๋งํ๋ฏ์ด, JSX๋ฅผ ์ฐ๋ฉด ํ๋์ JSX ์ฝ๋ ๋ด์์ JS์ HTML ์ฝ๋๋ฅผ ํผ์ฉํด์ ์ฌ์ฉํ ์ ์์๋ค. ์ด๋, JS ๋ก์ง๊ณผ ๊ทธ๊ฒ์ ์ฐ๊ฒฐํ๋ ค๊ณ ํ๋ HTML ์์๋ฅผ ํน์ ํ๋ ๋ก์ง์ ํ๋ฒ ๋ ์์ฑํ ํ์๊ฐ ์๊ธฐ ๋๋ฌธ์ ์ฝ๋๊ฐ ์งง์์ง๊ณ , ๊ฐ๊ฒฐํด์ง๋ค. ์ด๋ ์์ฒญ๋ ์ฅ์ ์ด๋ค. โ Injection attack ํดํน ๋ฐฉ์ด์ ์ฉ์ด ์ด๊ฑด ๊ทธ๋ ๊ฒ ์๋ฟ๋ ๋ด์ฉ์ด ์๋๋ผ์ ๊น๊ฒ ๋ฃ์ง๋ ์์๋ค. JSX๋ฅผ ์ฐ๋ฉด ํด๋น ์ฃผ์
์ฑ ๊ณต๊ฒฉ์ ๋ฐฉ์ดํ๊ธฐ ๋ ์ฉ์ดํ๋ค๊ณ ํ๋ค. 2. JSX ์ฌ์ฉ๋ฒ โ HTML ์์๋ฅผ ํ๋์ JS ๋ณ์๋ก ์ฌ์ฉํ๋ค. const element1 = Hello World!! ์๋ ๊ฒ ํ๋์ ์์๋ฅผ ๋ณ์๋ก ํน์ ์ด ๊ฐ๋ฅํ๋ค. ๋น์ฐํ ํด..
2024.01.13
ํ๋ก ํธ์๋ ๊ฐ๋ฐ/React - ์ด๋ก
JSX์ ์ ์์ ์๋ฆฌ์ ๋ํ์ฌ
1. JSX์ ์ ์ ์๋ ํ๋ก ํธ ์ฝ๋๋ ํ๋ฉด์ ๋์ฐ๋ HTML, ๊ทธ HTML์ ๊พธ๋ฏธ๋ CSS, ํ๋ฆฌ์ ํ
์ด์
๋ก์ง์ ๋ด๋นํ๋ JS ์ด 3๊ฐ์ง๋ก ๋๋๋ค. ์ด๋ ๊ฒ ์์ญ์ ๊ตฌ๋ถํ์ฌ ์์ฑํ๋ ๊ฒ์ ๋๋๋ก, ํผ๋ก๊ฐ์ ์ ๋ฐํ๋ค. ์๋ํ๋ฉด, JS๋ก ๋ง๋ ๋ชจ๋(ํน์ ๊ธฐ๋ฅ์ ํ๋ ์ฝ๋)์ ์ฐ๊ฒฐํ ํน์ HTML ์์(elements)์ ์ฐ๊ฒฐํ๋ ์์
์ ํญ์ ํด์ค์ผํ๊ธฐ ๋๋ฌธ์ด๋ค. ํด๋น ์์
์ ์ํด ๋ฐ๋ก ์ฝ๋๋ฅผ ์์ฑํด์ผ ํ๊ธฐ์ ๊ฐ๋
์ฑ์ด ๋์ฑ ์ ์ข์์ง๋ค. JSX๋ JavaScript & XML/HTML์ ์ฝ์๋ก, ์์์ ๋ณด์ฌ์ง ํ๋ก ํธ ์๋ ์ ๋ฐ์ ์ฝ์ ์ ๋ณด์ํ๊ธฐ ์ํด ๋ง๋ค์ด์ง ๊ฐ๋
์ด๋ค. JSX์์๋ Javascript ์ฝ๋ ์์์ HTML ์ฝ๋๋ฅผ ์์ฑํ๋ ๊ฒ์ด ๊ฐ๋ฅํ๋ค. ๋ฐ๋ผ์ ๋ฐ๊ณผ ๊ฐ์ ์ฝ๋ ์์ฑ์ด ๊ฐ๋ฅํด์ง๋ค. const e..
2024.01.13
ํ๋ก ํธ์๋ ๊ฐ๋ฐ/React - ์ด๋ก