컴포넌트를 선언하는 방식에는 두 가지가 있습니다.
1) Class Component
import React from 'react'
class Component extends React.Component {
render() {
return (
<div>
<h1>This is Class Component!</h1>
</div>
)
}
}
export default Component
render
함수가 꼭 있어야 하고, 그 안에 보여 주어야 할 JSX를 반환합니다.2) Functional Component
import React from 'react'
const Component = () => {
return (
<div>
<h1>This is Functional Component!</h1>
</div>
)
};
export default Component
return
통해 JSX를 반환합니다.자바스크립트 표현 : { ... javascript... }
class
vs. className
Inline Styling : <div style={{color : "red"}}>Hello React</div>
Self Closing tag : <div></div>
vs. <div />
모든 요소를 감싸는 최상위 요소 (React Fragments : <> ... </>
)
: JSX의 큰 특징 중 하나는 내부 요소들을 감싸는 최상위 요소가 있어야 합니다. Fragments는 DOM에 별도의 노드를 추가하지 않고 하나의 컴포넌트 안에 여러 자식 요소들을 간단하게 그룹화 할 수 있습니다. 요소들을 감싸는 div
태그의 불필요한 생성을 막을 수 있습니다.
<>
<div className="loginBtn" onClick={() => console.log("click")}>Login</div>
<br />
<div style={{backgroundColor: "grey", height: "10px"}} />
</>