React 조건문 사용방법
2021. 9. 23. 20:04ㆍReact
조건문을 이용해 랜더링하는 컴포넌트를 바꿀 수 있다.
Wrap에 status값을 보내준다. ( Boolean는 JS문법이기 때문에 { }를 사용한다. )
*Boolean값은 따로 false true 값을 주지않으면 default로 true이다.
import logo from './logo.svg'
import './App.css'
import {Wrap} from './Wrap'
function App() {
return (
<div className="App">
<header className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<Wrap status={false}></Wrap>
</header>
</div>
)
}
export default App
Wrap.js에서 status를 확인하고 true라면 <Hello3>를 랜더링하고, false라면 <Hello4>를 랜더링한다.
import {Hello3, Hello4} from './Hello'
function Wrap({status}) {
if (status) {
return (
<div>
<Hello3
hello="안녕하세요"
introduce="제 이름은 리액트 입니다."
color="aqua"
wrap="저는 Wrap에서 봅니다."
// defaultData="데이터가 있습니다"
></Hello3>
</div>
)
} else {
return <Hello4 />
}
}
export {Wrap}
//// 삼항연산자 사용
import {Hello3, Hello4} from './Hello'
function Wrap({status}) {
return (
<div>
{status ? (<Hello3
hello="안녕하세요"
introduce="제 이름은 리액트 입니다."
color="aqua"
wrap="저는 Wrap에서 봅니다."
// defaultData="데이터가 있습니다"
></Hello3>) : (
<Hello4 />
)}
</div>
)
}
export {Wrap}
function Hello3(propsData) {
return (
<div>
<div>{propsData.hello}</div>
<div style={{color: propsData.color}}>{propsData.introduce}</div>
<div>{propsData.defaultData}</div>
</div>
)
}
Hello3.defaultProps = {
defaultData: '데이터가 없습니다.',
}
function Hello4() {
return (
<div>
<div>false 입니다.</div>
</div>
)
}
export {Hello3, Hello4}
결과 :
출처 : https://react.vlpt.us/basic/06-conditional-rendering.html
728x90
반응형
'React' 카테고리의 다른 글
React useState에서 input 값 관리 (0) | 2021.11.20 |
---|---|
React 동적인 값 변경 useState 사용 (0) | 2021.11.20 |
React에서 Props 사용하기 (0) | 2021.09.23 |
React 정적 데이터/스타일 적용/클래스명 설정방법 (0) | 2021.09.23 |
React 컴포넌트 생성/사용 방법 (0) | 2021.09.23 |