리액트를 사용하다보면 조건부 렌더링을 자주 사용하게 된다.
const isShow = props.isShow
return {
isShow
? (<ShowIcon size={10} color={'red'} {...restProps} />)
: (<HideIcon size={10} color={'red'} {...restProps} />)
}
위의 예시처럼 컴포넌트에 전달할 props는 동일한데, 조건에 따라 컴포넌트만 다른 경우 아래와 같은 방법도 있다.
const isShow = props.isShow
const statusIcon = {
show: ShowIcon,
hide: HideIcon
}
const StatusIconComponent = statusIcon[isShow ? 'show' : 'hide']
return <StatusIconComponent size={10} color={'red'} {...restProps} />
'KNOW-HOW > SCRIPT' 카테고리의 다른 글
[ image polling ] (0) | 2024.08.21 |
---|---|
read JSON file from URL in Javascript (0) | 2022.10.20 |
[Typescript] enum의 key값을 array로 (0) | 2022.02.04 |
[TS] 객체의 key값으로 enum 사용하기 (Use Enum as restricted key type in Typescript) (0) | 2021.12.03 |
CSS property value 간단히 적용하기 (2) | 2021.09.30 |