2021. 9. 24. 08:00ใFront-End ์์ ์ค/Vue.js
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค.
์ค๋์ ์ฃผ๋ํ๋์ด React์ ๋ณธ๊ฒฉ์ ์ผ๋ก ๊ณต๋ถํ๋ ์๊ฐ์ธ ๊ฒ์ด์์.
์ฃผ๋ํ๋์ Full-Stack์ด ๋๊ณ ์ถ์ ๊ฒ์ด์์!
์์ค ์ฝ๋๊ฐ ๊ถ๊ธํ์ ๋ถ๋ค์ ์ฃผ๋ํ๋์ Git์ ๊ด์ฌ์ ์ฃผ์ธ์!
๐ ์ด๋ก
์น ๋ธ๋ผ์ฐ์ ๋ ๋ฆฌ์ํธ๋ผ๋ ๊ธฐ์ ์ ๋ชจ๋ฅด๋ ๊ฒ์ด์์.
component๋ฅผ ํตํด Tag๋ฅผ ๋ง๋ค๊ณ , ๊ทธ๊ฒ์ html๊ณผ Mappingํด์ฃผ๋ฉด ๋ฆฌ์ํธ๊ฐ ์์์ html์ ๊ณต๊ธํด ์ฃผ๊ฒ ๋๋ต๋๋ค.
Component (Class ๊ธฐ๋ฐ)์์ ์ฌ์ฉ ๋๋ ์ธ์ด๋ ์ ์ฌ js์ด์ง js๊ฐ ์๋ ๊ฒ์ด์์. ๊ทธ ์์ ์ฌ์ฉ๋ Tag๋ฌธ๋ฒ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ด์์.
JSX๋ Facebook์์ ๋ง๋ ์ปดํจํฐ์ฉ ์ธ์ด๋ก ์ด๊ฒ์ ์ฌ์ฉํ์ฌ ๋ฌธ๋ฒ์ ์์ฑํ๋ฉด create app์ด ์์์ ์ปจ๋ฒํ
์ ํตํด js๋ก ๋ณํ ์์ผ ์ฃผ๊ฒ ๋๋ต๋๋ค.
TOC๋ Table Of Content๋ก ๋ชฉ์ฐจ๋ฅผ ๋ํ๋ด๋ ๋ง์ด๋ผ ํ๋ค์!
๋ฆฌ์ํธ๋ ์๋ง์ง์ฐฝ์ผ๋ก ์ญ ์ผ๋ html์ ๊น๋ํ๊ฒ ์ ๋ฆฌ ํด์ฃผ๋ ๋ฐฉ๋ฒ์ธ ๊ฒ์ด์์. ์ปดํฌ๋ํธ์๋ง ์ง์คํ๊ฒ ํ์ฌ ๋ณต์ก๋๋ฅผ ํ์คํ๊ฒ ๋ฎ์ถ์ด ์ค ์ ์๋ ๊ฒ์ด์์.
๐ ์ฝ๋
๐App.js
import React, { Component } from 'react';
import './App.css';
class Subject extends Component { // ๋๋ Subject(์ฒซ๊ธ์ ๋๋ฌธ์)๋ผ๋ Component๋ก ๋ง๋ค๊ฒ ๋ค.
render() { // ๋ฐ๋์ renderํจ์๊ฐ ์์ด์ผ ํ๋ค. ๋ํ Class์์ ์๋ ํจ์(Method)๋ function์ ์๋ตํ๋ค.
return (
// Component๋ฅผ ๋ง๋ค ๋๋ ๋ฐ๋์ ํ๋์ ์ต์์ Tag๋ง (๋ฑ ํ๋) ์จ์ผ ํ๋ค.
<header>
<h1>Web</h1>
World Wide Web!
</header>
);
} // render() ๋
} // Subject Component ๋
class Content extends Component {
render() {
return(
<article>
<h2>HTML</h2>
HTML is HyperText Markup Language.
</article>
);
}
}
class Nav extends Component {
render() {
return (
<nav>
<ul>
<li><a href="1.html">HTML</a> </li>
<li><a href="2.html">CSS</a> </li>
<li><a href="3.html">JavaScript</a> </li>
</ul>
</nav>
);
}
}
class App extends Component { // App Class
render() {
return (
<div className="App">
<Subject title={this.state.subject.title} sub={this.state.subject.sub}></Subject>
<Nav></Nav>
<Content title="HTML" desc="HTML is HyperText Markup Language."></Content>
</div>
);
}
}
๐ ๊ฒฐ๊ณผ
์ฃผ๋ํ๋์ ๊ธ์ด ๋ง์์ ๋์ จ๋์? ๊ตฌ๋ ๊ณผ ๊ณต๊ฐ! ๊ทธ๋ฆฌ๊ณ , ๋๊ธ ๊ทธ๋ฆฌ๊ณ ๋ฐฉ๋ช ๋ก์ ์ฃผ๋ํ๋์๊ฒ ๋ง์ ํ์ด ๋ฉ๋๋ค
'Front-End ์์ ์ค > Vue.js' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[React] State์ Props์ ์ฐจ์ด (0) | 2021.10.02 |
---|---|
[React] State (0) | 2021.09.27 |
[React] Component File ๋ถ๋ฆฌ (0) | 2021.09.26 |
[React] Props (0) | 2021.09.25 |
[React] ์ฒ์ ์์ํ๋ React (0) | 2021.09.16 |