프로그래머가 되는 꿈
컴포넌트와 main.jsx의 개념 본문
import { useState } from 'react'
import reactLogo from './assets/react.svg'
import viteLogo from '/vite.svg'
import './App.css'
function App() {
const [count, setCount] = useState(0)
return (
<>
<div>
<a href="https://vite.dev" target="_blank">
<img src={viteLogo} className="logo" alt="Vite logo" />
</a>
<a href="https://react.dev" target="_blank">
<img src={reactLogo} className="logo react" alt="React logo" />
</a>
</div>
<h1>Vite + React</h1>
<div className="card">
<button onClick={() => setCount((count) => count + 1)}>
count is {count}
</button>
<p>
Edit <code>src/App.jsx</code> and save to test HMR
</p>
</div>
<p className="read-the-docs">
Click on the Vite and React logos to learn more
</p>
</>
)
}
export default App
자바스크립트+HTML = 컴포넌
함수명: 대문자로 시작(ex.App)
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import './index.css'
import App from './App.jsx'
createRoot(document.getElementById('root')).render(
<StrictMode>
<App />
</StrictMode>,
)
main.jsx
<App /> 위의 HTML을 가져온다
'프론트엔드 (Front-end) > React' 카테고리의 다른 글
| 빨간 박스 만들기(2) (0) | 2026.01.14 |
|---|---|
| 빨간 박스 만들기(1) (0) | 2026.01.14 |
| SPA(Single Page Application) (0) | 2026.01.14 |
| package.json 과 node_modules의 초기 화면 및 설정 (8:25) (0) | 2026.01.09 |
| Node.js 버전 업그레이드 방법 (0) | 2026.01.08 |