-
8. Styled-components : 버튼 만들기 - 컴포넌트 스타일링 | 벨로퍼트Front-end/React.js 2020. 7. 20. 10:24반응형
이제 우리가 이전 Sass 를 배울 때 만들었던 재사용성 높은 Button 컴포넌트를 styled-components 로 구현을 해보겠습니다.
기본적인것부터 단계적으로 구현해봅시다.
src 안에 components 디렉터리를 생성 후, 그 안에 Button.js 파일을 생성하세요.
/src/components/Button.js :
import React from 'react'; import styled from 'styled-components'; const StyledButton = styled.button` /* 공통 스타일 */ display: inline-flex; outline: none; border: none; border-radius: 4px; color: white; font-weight: bold; cursor: pointer; padding-left: 1rem; padding-right: 1rem; /* 크기 */ height: 2.25rem; font-size: 1rem; /* 색상 */ background: #228be6; &:hover { background: #339af0; } &:active { background: #1c7ed6; } /* 기타 */ & + & { margin-left: 1rem; } `; function Button({ children, ...rest }) { return <StyledButton {...rest}>{children}</StyledButton>; } export default Button;
그 다음엔 App.js 에서 Button 을 사용해봅시다.
/src/App.js :
import React from 'react'; import styled from 'styled-components'; import Button from './components/Button'; const AppBlock = styled.div` width: 512px; margin: 0 auto; margin-top: 4rem; border: 1px solid black; padding: 1rem; `; function App() { return ( <AppBlock> <Button>BUTTON</Button> </AppBlock> ); } export default App;
반응형'Front-end > React.js' 카테고리의 다른 글
10. Styled-components : 버튼 사이즈 조정하기 - 컴포넌트 스타일링 | 벨로퍼트 (0) 2020.07.20 9. Styled-components : Polished 스타일 유틸 함수 사용 - 컴포넌트 스타일링 | 벨로퍼트 (0) 2020.07.20 7. Styled-components - 컴포넌트 스타일링 | 벨로퍼트 (0) 2020.07.20 6. CSS Module - 컴포넌트 스타일링 | 벨로퍼트 (0) 2020.07.16 5. Sass : ...rest props 전달하기 - 컴포넌트 스타일링 | 벨로퍼트 (0) 2020.07.14