이 상황에서 나는 받아온 props 를 이용하여 inline 으로 style 을 적용하고 있었다.
// parent component
<CategoryContainer
isCategoryActive={isCategoryActive}
/>
// child component
function CategoryContainer({ isCategoryActive }) {
return (
<Category
onClick={handleCategory}
style={{borderColor: isCategoryActive === false ? "#cccccc" : "#767676"}}
/>
);
}
하지만 inline style 보다는 가능하다면 곧바로 styled-component 에 적용 시키는 것이 옳다는 피드백을 받아 적용시켜 보았다.
일단 부모 컴포넌트는 건드리지 않았다.
// child component
function CategoryContainer({ isCategoryActive }) {
return (
<Category
onClick={handleCategory}
isCategoryActive={isCategoryActive}
/>
);
}
const Category = styled.div`
border: 1px solid ${(props) => props.isCategoryActive ? "#cccccc" : "#767676"}
`;
inline style 을 보다 컴포넌트 내부가 깔끔해 졌다.