리액트의 컴포넌트는 걍 나만의 태그를 만드는 것이라 생각하면 쉽다.
<div>, <p> 이런거는 원래 html기본 태그고
<Content> <Controls>처럼 내맘대로 이름지어서 태그를 쓸수있다.
클래스로 만들고 클래스이름.js로 만든다.
<Article.js>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import React, { Component } from "react";
class Article extends Component {
render() {
return (
<div>
<h3>{this.props.article.title}</h3>
<p>{this.props.article.desc}</p>
</div>
);
}
}
export default Article;
|
cs |
Component 클래스를 상속받아서 만들어야하고
render함수에 이 컴포넌트가 어떤내용을 보여줄지 기술한다.
여러개의 태그가 병렬로 있으면 금마들을 아우르는 태그가 꼭 있어야된다. 걍 리액트 문법이다.
위같은경우 <h3>태그랑 <p>태그가 병렬로 있어서 <div>로 감싸줬다.
플젝 만들면 생기는 App.js도 컴포넌트다.
다른 데에서 사용하려면 export를 해주고
쓰고자하는 파일에서 import를 해주면된다.
index.js를 따보면 index.html에 있는 div를 id로 끍어와서 거기에 <App>태그를 렌더링하는걸 볼수있다.
App.js를 따보면 App컴포넌트의 render()가 있고 그 안에 <Subject> 태그가 있다.
Subject.js를 따보면 Subject컴포넌트의 render()가 있고 안에 내용이 있다.
컴포넌트를 클래스로 태그를 객체로 이해하면 쉽다.
'웹 > 리액트' 카테고리의 다른 글
[리액트]형상관리 (0) | 2019.08.31 |
---|---|
[리액트]앱 빌드/배포 (0) | 2019.08.31 |
[리액트]이벤트 핸들러 (0) | 2019.08.31 |
[리액트]props state (0) | 2019.08.31 |
[리액트]플젝 만들기 (0) | 2019.08.31 |