react ์คํฐ๋์์ ๋ฆฌ์กํธ๋ฅผ ๋ค๋ฃจ๋ ๊ธฐ์ ์ด๋ผ๋ ์ฑ ์ ์ ์ ํ๊ณ ์ด ์ฑ ์ ์ฝ๊ณ ๋ฐฐ์ด ๊ฒ์ ๋ฐํ์ผ๋ก ์์ฑ๋์๋ค.
React Element
๋ฅผ ์์ฑํ๋ค.Babel
์ ํตํด ์ผ๋ฐ ์๋ฐ์คํฌ๋ฆฝํธ ํํ์ ์ฝ๋๋ก ๋ณํ๋๋ค.function App(){
return (
<div>
Hello react
</div>
);
}
//์๋์ ๊ฐ์ด ๋ณํ
function App(){
return React.createElement("div", null, "Hello react");
}
ReactDOM.render(
<React.StrictMode>
<App/>
</React.StrictMode>,
document.getElementbyId("root)
);
ReactDOM.render()
react-dom
๋ชจ๋์ ๋ถ๋ฌ์ ์ฌ์ฉํ ์ ์๋ค.Fragment
๊ธฐ๋ฅ, <> </>
{}
๋ก ๊ฐ์ธ๋ฉด ๋๋ค.if๋ฌธ
์ ์ฌ์ฉํ ์ ์๊ณ , ๋์ ์ผํญ ์ฐ์ฐ์๋ฅผ ์ฌ์ฉํ๋ค.&&
)๋ฅผ ์ฌ์ฉํ ์กฐ๊ฑด๋ถ ๋ ๋๋ง true && expression
์ expression
์ผ๋ก ํ๊ฐ๋๊ณ false && expression
์ false
๋ก ํ๊ฐ๋๋ค.null
๊ณผ false
๋ฅผ ๋ ๋๋งํ๋ฉด ํ๋ฉด์ ์๋ฌด๊ฒ๋ ๋ํ๋์ง ์๋๋ค. (falsyํ ๊ฐ์ธ 0์ ์์ธ)function App() {
const name = "๋ฆฌ์กํธ";
return (
<div>{name === "๋ฆฌ์กํธ" ? <h1>๋ฆฌ์กํธ์
๋๋ค</h1> : null}</div>
);
}
// ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋
function App() {
const name = "๋ฆฌ์กํธ";
return (
<div>{name === "๋ฆฌ์กํธ" && <h1>๋ฆฌ์กํธ์
๋๋ค</h1>}</div>
);
}
undefined
๋ ๋๋งํ์ง ์๊ธฐ (์ค๋ฅ ๋ฐ์)||
)๋ฅผ ์ฌ์ฉํ๋ฉด ํด๋น ๊ฐ์ด undefined
์ผ ๋ ์ฌ์ฉํ ๊ฐ์ ์ง์ ํ ์ ์๋ค.// ์ค๋ฅ ๋ฐ์
function App(){
const name = undefined;
return name;
}
// OR ์ฐ์ฐ์ ์ด์ฉ
function App(){
const name = undefined;
return name || "๊ฐ์ด undefined์
๋๋ค.";
}
// JSX ๋ด๋ถ์ undefined (์ค๋ฅ ๋ฐ์ x)
function App(){
const name = undefined;
return (
<div>{name}</div>
);
}
// undefined์ผ ๋ ๋ณด์ฌ์ฃผ๊ณ ์ถ์ ๋ฌธ๊ตฌ
function App(){
const name = undefined;
return (
<div>{name || "๋ฆฌ์กํธ"}</div>
);
}
camelCase
)์ผ๋ก ์์ฑํด์ผ ํ๋ค.class
๋์ className
์ผ๋ก ์์ฑํ๋ค.{/*์ด๋ฐ ํํ๋ก*/}