๐กJSX?
- ๋ฆฌ์กํธ์์ ์๊น์๋ฅผ ์ ์ํ ๋, ์ฌ์ฉํ๋ ๋ฌธ๋ฒ
- HTML์ฒ๋ผ ์๊ฒผ์ง๋ง ์ค์ ๋ก๋ JavaScript!
return <div>JSX๋ฅผ ์์๋ณด์!</div>;
๐ก JSX์ ๊ธฐ๋ณธ๊ท์น
1๏ธโฃ ๊ผญ ๋ซํ์ผ ํ๋ ํ๊ทธ
import React from 'react';
import Hello from './Hello';
function App() {
return (
<div>
<Hello />
<Hello />
<Hello />
/* ์ฌ๊ธฐ์์ ์ค๋ฅ ๋ฐ์! ๊ผญ </div>๋ก ๋ซ์์ฃผ์ */
<div>
</div>
);
}
export default App;
- HTML์์๋ input๊ณผ br ํ๊ทธ๋ฅผ ๋ซ์ง ์๊ณ ์ฌ์ฉํ๊ธฐ๋ ํ๋ค! ํ์ง๋ง ๋ฆฌ์กํธ์์๋ ๊ทธ๋ ๊ฒ ํ๋ฉด ์๋จ!
- Self Closing ํ๊ทธ๋ฅผ ์ฌ์ฉํ์!
-
/* ์๋ชป๋จ */ <input> <br> /* Self Closing ํ๊ทธ */ <input /> <br />
2๏ธโฃ ๊ผญ ๊ฐ์ธ์ ธ์ผํ๋ ํ๊ทธ
- ๋๊ฐ ์ด์์ ํ๊ทธ๋ ๋ฌด์กฐ๊ฑด ํ๋๋ก ๊ฐ์ธ์ ธ์ผ ํ๋ค
{/* ์๋ชป๋ ๊ฒฝ์ฐ! */}
import React from 'react';
import Hello from './Hello';
function App() {
return (
<Hello />
<div>๋๊ฐ์ด์์ ํ๊ทธ๋ ์ด๋ป๊ฒ?</div>
);
}
export default App;
{/* ์ณ์ ๊ฒฝ์ฐ : ๊ผญ ํ๊ทธ ํ๋๋ก ํ๋ฒ๋ ๊ฐ์ธ์ฃผ์ */}
import React from 'react';
import Hello from './Hello';
function App() {
return (
<div>
<Hello />
<div>๋๊ฐ์ด์์ ํ๊ทธ๋ ์ด๋ป๊ฒ?</div>
</div>
);
}
export default App;
โ๏ธ๊ทธ๋ฐ๋ฐ, div๋ก ๊ฐ์ธ๊ธฐ ์ ๋งคํ๊ณ ์ซ์๋ Fragment ๋ก ๊ฐ์ธ์ฃผ์โ๏ธ
- ๋ธ๋ผ์ฐ์ ์์์ ๋ฐ๋ก ๋ณ๋์ ์๋ฆฌ๋จผํธ๋ก ๋ํ๋์ง ์๋๋ค.
- <> ... </> ํํ
import React from 'react';
import Hello from './Hello';
function App() {
return (
<>
<Hello />
<div>๋๊ฐ์ด์์ ํ๊ทธ๋ ์ด๋ป๊ฒ?</div>
</>
);
}
export default App;
3๏ธโฃ ์ฃผ์
- JSX ๋ด๋ถ์ ์ฃผ์ {/* ์๋ก ํํ */}
- ์ด๋ฆฌ๋ ํ๊ทธ ๋ด๋ถ์์๋ //
import React from 'react';
import Hello from './Hello';
function App() {
return (
<div>
{/* ์ฃผ์์ ํ๋ฉด์ ๋ณด์ด์ง ์๋๋ค. */}
/* ์ค๊ดํธ๋ก ๊ฐ์ธ์ง ์์ผ๋ฉด ํ๋ฉด์ ๋ณด์ธ๋ค */
<Hello
// ์ด๋ฆฌ๋ ํ๊ทธ ๋ด๋ถ์์๋ ์ด๋ ๊ฒ ์์ฑ ๊ฐ๋ฅ
/>
<Hello />
<Hello />
</div>
);
}
export default App;
Reference
'React > Velopert's React' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[React] Study #6 | useState : ๋ฐ๋๋ ๊ฐ ๊ด๋ฆฌ (0) | 2021.10.02 |
---|---|
[React] Study #5 | ์กฐ๊ฑด๋ถ ๋ ๋๋ง (0) | 2021.09.29 |
[React] Study #4 | Props๋ฅผ ํตํ ์ปดํฌ๋ํธ๊ฐ์ ๊ฐ ์ ๋ฌ (0) | 2021.09.29 |
[React] Study #2 | Component, ์ปดํฌ๋ํธ! (0) | 2021.09.29 |
[React] Study #1 | React? React! (0) | 2021.09.29 |