Учусь писать компоненты, вот набросал.
Вопрос.
Можно ли работать с styled-components более удобнее? Постоянно писать подобные условия для свойств утомительно и не очень красиво, как по мне.
index.js
import { Button } from "./Button";
Button.defaultProps = {
color: "primary",
shadow: true
};
export { Button };
Button.js
import React from "react";
import styled from "styled-components";
const ButtonDefault = ({ children = "Отправить", className, onClick }) => (
<div className={className} onClick={onClick}>
{children}
</div>
);
export const Button = styled(ButtonDefault)color: ${({ color }) => color === "dark" ? "white" : color === "light" ? "black" : "white"}; background: ${({ color }) => color === "dark" ? "black" : color === "light" ? "white" : color === "primary" ? "blue" : color}; display: inline-block; padding: 14px; cursor: pointer; border-radius: 3px; border: ${({ color }) => (color === "light" ? "1px solid black" : "none")}; box-shadow: ${({ shadow }) => shadow && "2px 2px 4px black;"}; :hover { opacity: 0.8; };