React
React - 조건부 렌더링
Starters
2020. 9. 8. 17:54
조건부 렌더링이란?
- 특정 값이 참인지 거짓인지에 따라 다른 결과 보여주는 것
1. 삼항 연산자 사용
- App.js -
<Hello name="react" color="red" isSpecial={true} />
isSpecial 추가
- hello.js -
import React from 'react';
function Hello( {color, name, isSpecial} ){
return (
<div style={{
color
}}>
{isSpecial ? <b>*</b> : null}
안녕하세요 {name}
</div>;
);
}
Hello.defaultProps = {
name: '이름없음'
}
export default Hello;
{undefined}, {false} 등 falsy한 값들은 랜더링 해도 브라우저에 보여지지 않는다.
({0} 은 제외)
위와 같은 상황은 조건에 따라 값을 보여주거나 보여주지 않거나 하는 것
-> 삼항연산자 보다 &&연산자 사용하는 것이 더 좋다.
{isSpecial && <b>*</b>}
isSpecial 이 True이면 뒤에 내용이 나오게 된다.
값에 따라 다른 것 보여줄 땐(삼항 연산자)
<b>{isSpecial ? "True일 때" : "False일 때"}</b>
※ props 의 boolean 값은 따로 지정해주지 않으면 True 값이 default값
<Hello name="react" color="red" isSpecial />
- isSpecial은 True이다.