๐ป Today
1. ์ฝ๋์คํ ์ด์ธ
react
Algorithm (7, 8)
React Twittler (pair)
2. ํ์ต
JSX
create react app
3. React
์ ์ธํ(Declarative) : ํ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด html, css, js ๋ก ๋๋ ์ ์ ๊ธฐ๋ณด๋ค๋ ํ๋์ ํ์ผ์ ๋ช ์์ ์ผ๋ก ์์ฑํ ์ ์๊ฒ JSX๋ฅผ ํ์ฉํ ์ ์ธํ ํ๋ก๊ทธ๋๋ฐ ์งํฅ
์ปดํฌ๋ํธ ๊ธฐ๋ฐ(component-Based) : ํ๋์ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ํด ์ฌ๋ฌ ์ข ๋ฅ์ ์ฝ๋๋ฅผ ๋ฌถ์ด๋ ์ปดํฌ๋ํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ๋ฐํ๋ค. ์ปดํฌ๋ํธ๋ก ๋ถ๋ฆฌํ๋ฉด ์๋ก ๋ ๋ฆฝ์ ์ด๊ณ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๊ธฐ ๋๋ฌธ์, ๊ธฐ๋ฅ ์์ฒด์ ์ง์คํ์ฌ ๊ฐ๋ฐํ ์ ์๋ค.
๋ฒ์ฉ์ฑ(Learn Once, Write Anywhere) : ๋ฆฌ์กํธ๋ jsํ๋ก์ ํธ ์ด๋์๋ ์ ์ฐํ๊ฒ ์ ์ฉ๋ ์ ์๋ค. Facebook์์ ๊ด๋ฆฌ๋์ด ์์ ์ ์ด๊ณ , ๊ฐ์ฅ ์ ๋ช ํ๋ฉฐ, ๋ฆฌ์กํธ ๋ค์ดํฐ๋ธ๋ก ๋ชจ๋ฐ์ผ ๊ฐ๋ฐ๋ ๊ฐ๋ฅํ๋ค.
๊ท์น
opening tag์ closing tag๋ก ๊ฐ์ธ์ฃผ์ด์ผ ํ๋ค.
// ์ฌ๋ฐ๋ฅธ ํํ
<div>
<div>
<h1>Hello</h1>
</div>
<div>
<h2>Word</h2>
</div>
</div>
//์ฌ๋ฐ๋ฅด์ง ๋ชปํ ํํ
<div>
<h1>Hello</h1>
</div>
<div>
<h2>Word</h2>
</div>
<div className= "hello">Hello!</div> // ์ฌ๋ฐ๋ฅธ ํ๊ธฐ
<div class= "hello">Hello!</div> // X
function App() {
const name = 'code';
return (
<div>
Hello, {name}!
</div>
);
}
์๋ฌธ์๋ก ์์ํ๋ฉด html ์๋ฆฌ๋จผํธ๋ก ์ธ์ํ๊ธฐ์ ๋๋ฌธ์๋ก ์์ฑ
<div>
{
(1+1 === 2) ? (<p>์ ๋ต</p>) : (<p>ํ๋ฝ</p>)
</div>
}
function Blog() {
const content = post.map(post) =>
<div key= ={post.id}>
<h3>{post.title}</h3>
<p>{post.content}</p>
</div>
);