1. React๋ก ํ๋ฉด ๊ฐ๋ฐ
์, ์ด์ ๋ถํฐ REACT๋ก ํ๋ฉด์ ๊ฐ๋ฐ ํด๋ณด์.
์์์ ์ฌ์ ์ค๋น์ ํ๋ก์ ํธ ํด๋์ธ linkservice์๋์ npx create-react-app ์ผ๋ก ์ด๋ฏธ client์ ์์ฑํ๋ค.
#4. ํ๋ก์ ํธ ํด๋ ๊ตฌ์กฐ ๋ฐ ํ๊ฒฝ์ค์
1.1. React ๊ธฐ๋ณธ์ค์
๊ธฐ๋ณธ ํด๋๊ตฌ์กฐ์์ ํ์ ์๋ ํ์ผ์ ๋ชจ๋ ์ง์ด๋ค.
· public ํด๋ ๋ฐ์ index.html์ ์ ์ธํ๊ณ ๋ชจ๋ ์ญ์
· src ํด๋ ๋ฐ์ App.js, index.js ์ ์ ์ธํ๊ณ ๋ชจ๋ ์ญ์
React ํ์ผ ๊ตฌ์กฐ๋ฅผ ๊ฐ๋จํ ์ค๋ช ํ๋ค๋ฉด,
1. index.js
src ํด๋์ ๋ฉ์ธ Script๋ก ์ฌ๊ธฐ์์ HTML ํ ํ๋ฆฟ ๋ฐ JavaScript์ ์ปดํฌ๋ํธ๋ฅผ ์กฐํฉํ์ฌ ๋ ๋๋ง์ ํ๋ค.
2. App.js
src ํด๋์ ์ปดํฌ๋ํธ๋ฅผ ์ ์ํ๋ Script์ด๋ค. ์ค์ ๋ก ํ๋ฉด์ ํ์๋๋ ๋ด์ฉ ๋ฑ์ ์ฌ๊ธฐ์์ ์ ์๋๋ค.
3. index.html
public ํด๋์ ์์ผ๋ฉฐ, HTML ํ ํ๋ฆฟ ํ์ผ์ด๋ค. ์ด ํ์ผ์ด ์ง์ ํ์๋๋ ๊ฒ์ ์๋๊ณ , index.js์ ์ํด ๋ ๋๋ง ๋ ๊ฒฐ๊ณผ๊ฐ ํ์๋๋ค.
๐ App.js์์ ์ปดํฌ๋ํธ๋ฅผ ์ ์ํ๊ณ -> index.js ์์ ReactDOM.rendor ํ๊ณ -> index.html์์ ํ์๋๋ค.
๋จผ์ , App.js ์ ์์ ํ๋ค.
์๋ ์ฝ๋์์ ํ์ ์๋ ๋ด์ฉ ์ง์ฐ๊ณ , ๋ค์๊ณผ ๊ฐ์ด ์ถ๊ฐ ํ๋ค.
index.js ์์ reportWebVitals ๋ถ๋ถ๊ณผ import index.css์ ์ฃผ์์ฒ๋ฆฌ ํ๋ค.
๐ ์ฐธ๊ณ ๋ก, reportWebVitals๋ Create React App์์ ์๋ํํธ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก Index ํ์ผ์ ์จ ์๋ ๊ฒ์ฒ๋ผ
reportWebVitals() ์ console.log์ ๋ฃ์ด์ฃผ๋ฉด ๊ฐ๋ฐ์ฐฝ์ ํตํด ์ฑ์ ํผํฌ๋จผ์ค ์๊ฐ๋ค์ ๋ถ์ํ์ฌ objectํํ๋ก
๋ณด์ฌ์ค๋ค.
์ด์ ํฐ๋ฏธ๋์์ yarn start์ ์คํํ๊ณ , ๋ธ๋ผ์ฐ์ ์์ ์ ์ํด๋ณด์.
1.2. ๋์์ธ ๊ฐ์ ธ์ค๊ธฐ
๋์์ธ๊น์ง ํ๋ฉด 1์ธ ๊ฐ๋ฐ์๋ก ๊ฐ์ฅ ์ด์์ ์ด๋ง, ๊ทธ๋งํผ ๋ง์ ๋ ธ๋ ฅ์ด ํ์ํ๋ค. ๋๋ ๋์์ธ ๋งํผ์ ๋ง์ด ๋ฐฐ์ฐ์ง ๋ชปํด์ ์์ ์ง์์ผ๋ก ํ๋ฉด์ ๋ง๋ค์ด ๋ณด๊ธฐ๋ก ํ๋ค.
๋์์ธ์ด ํ์ ์๋ ๋ถ๋ค์ ๋์์ธ ์ค๋ช ๋ถ๋ถ์ ์ ์ธํ๊ณ , ๊ฐ๋ฐ๋ถ๋ถ๋ง ๋ด๋ ๋๋ค.
์ฐ์ Bootstrap ๋ฌด๋ฃ ๋์์ธ์ ๊ฐ์ง๊ณ ์์ ๋ณ๊ฒฝํด๋ณด๊ณ ์ ํ๋ค.
๋์์ธ ์ฐธ์กฐ : https://getbootstrap.com/docs/5.3/examples/
์ฐ๋ฆฌ๋ Albumํ๋ฉด์ ๊ฐ์ง๊ณ ์์ํ๊ณ ์ ํ๋ค. https://getbootstrap.com/docs/5.3/examples/album/ ์ ์ํ ์ค๋ฅธ์ชฝ ๋ง์ฐ์ค ํด๋ฆญํด์ ํ์ด์ง ์์ค๋ณด๊ธฐ์์ HTML์ ๋ณต์ฌํ์ฌ index.html์ ๋ถ์ฌ ๋ฃ๋๋ค.
Title๋ฑ ํ ์คํธ ๋ถ๋ถ์ ๋นผ๊ฑฐ๋, ์์ ํ์๊ณ , HTML์์ ๋ณธ๋ฌธ์ ํด๋น๋๋ <main></main> ๊ณผ <footer></footer> ๋ ์ญ์ ํ๊ณ ๋๋จธ์ง ๋ถ๋ถ์์ ํ์ํ ๋ถ๋ถ์ ์ถ๊ฐ/์์ /์ญ์ ํด์ ์ด๊ธฐ ํ๋ฉด์ ๊ตฌ์ฑํด๋ณด์
<main></main> ๋ถ๋ถ์ด ๊ฐ์ฅ ์ค์ํ๋ฏ๋ก, ์์ค๋ด ํ์ธํ๊ธฐ ๋ฐ๋๋ค.
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no, maximum-scale=1">
<meta name="description" content="">
<meta name="generator" content="Hugo 0.88.1">
<title>๋งํฌ์๋น์ค</title>
<!-- Bootstrap core CSS -->
<link href="https://getbootstrap.kr/docs/5.1/dist/css/bootstrap.min.css" rel="stylesheet"
integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous">
</head>
<body>
<header>
<div class="collapse bg-dark" id="navbarHeader">
<div class="container">
<div class="row">
<div class="col-12">
<h4 class="text-white">๋งํฌ์๋น์ค</h4>
<p class="text-muted">๊ฐ๋ฐ์ ์์ฐํ ์กด์ค ๋ฐ์์ผ ํ ๊ฐ์ธ์ ์ฐฝ์๋ฌผ์
๋๋ค.
</p>
</div>
<div class="col-12">
<h6 class="text-white">Developers</h4>
<ul class="list-unstyled">
<li class="text-muted">(์ฃผ)XXXXXXXX</li>
<li class="text-muted">์ฌ์
์๋ฒํธ:XXX-XX-xxxxx</li>
<li class="text-muted">๋ํ์ ํ:000-1111-2222</li>
</ul>
</div>
</div>
</div>
</div>
<div class="navbar navbar-dark bg-dark shadow-sm">
<div class="container">
<a href="/" class="navbar-brand d-flex align-items-center">
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" stroke="currentColor"
stroke-linecap="round" stroke-linejoin="round" stroke-width="2" aria-hidden="true" class="me-2"
viewBox="0 0 24 24">
<path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z" />
<circle cx="12" cy="13" r="4" />
</svg>
<strong>๋งํฌ์๋น์ค</strong>
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarHeader"
aria-controls="navbarHeader" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
</div>
</div>
</header>
<main>
<!-- ๋ฐฐ๊ฒฝ์ด๋ฏธ์ง ์ฒ๋ฆฌ -->
<section class="container" id="section">
</section>
<div class="album py-4 bg-light" >
<div class="container" id="root">
<!-- ์ฌ๊ธฐ์ ๋ณธ๋ฌธ๋ด์ฉ์ ์ฒ๋ฆฌ -->
</div>
</div>
</main>
<!-- <footer class="text-muted py-2" id="footer">
</footer> -->
</body>
</html>
๐ ๋์์ธ ๋ฐ ํผ๋ธ๋ฆฌ์ฑ์ด ๊ฐ๋ฅํ์ ๋ถ๋ค์ ๊ฐ์ ๋ค๋ฅธ ๋์์ธ์ผ๋ก ํด๋ ๋ฌด๋ฐฉํ๋ค.
์ด์ ํ๋ฉด์ด ์ ์ถ๋ ฅ๋๋์ง ํ์ธ ํ๋ค.
๋ค์ํธ์๋ Component์ ์์ ํด๋ณด์.
'React&Python์ผ๋ก ์น๊ฐ๋ฐ > ๋งํฌ์๋น์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
#9. ์ดํ๋ฉด ๋์์ธ ( CSS ์ ์ฉ ๋ฐ ํ๋ฉด Component์ ์ ) (0) | 2023.03.19 |
---|---|
#8. ํ๋ก ํธ์๋ ํ๋ฉด๊ฐ๋ฐ (component ์ ์) (0) | 2023.03.17 |
#6. Python์ผ๋ก API ๊ฐ๋ฐ(API Resource์ ์ธ ๋ฐ ํ ์คํธ) (0) | 2023.03.11 |
#6. Python์ผ๋ก API ๊ฐ๋ฐ(๋ฐ์ดํ๋ฒ ์ด์ค ๋ชจ๋ธ ์์ ) (0) | 2023.03.10 |
#5. Python์ผ๋ก API ๊ฐ๋ฐ(๊ธฐ๋ณธํ๊ฒฝ๊ตฌ์ฑ) (0) | 2023.03.09 |