【发布时间】:2021-10-02 06:45:31
【问题描述】:
我需要在其他组件中使用我的自定义微调器。所以我做了一个可重复使用的微调器?
如何复制其样式并自定义其他样式?我只想更改stroke 或加载的颜色。请在这里检查我的代码
Spinner.js
import styled from 'styled-components'
const StyledSpinner = styled.svg`
animation: rotate 1s linear infinite;
width: 50px;
height: 30px;
& .path {
stroke: #000000;
stroke-linecap: round;
animation: dash 1.5s ease-in-out infinite;
}
@keyframes rotate {
100% {
transform: rotate(360deg);
}
}
@keyframes dash {
0% {
stroke-dasharray: 1, 150;
stroke-dashoffset: 0;
}
50% {
stroke-dasharray: 90, 150;
stroke-dashoffset: -35;
}
100% {
stroke-dasharray: 90, 150;
stroke-dashoffset: -124;
}
}
`
const Spinner = () => (
<StyledSpinner viewBox="0 0 50 50">
<circle className="path" cx="25" cy="25" r="20" fill="none" strokeWidth="4" />
</StyledSpinner>
)
export default Spinner
NewComponent.js
import CustomSpinner from '../Spinner'
const Spinner = styled(CustomSpinner)`
& .path {
stroke: #fff;
}
`
【问题讨论】:
标签: reactjs react-hooks styled-components