样式化组件 - 扩展元素样式和覆盖属性
Styled Components - extending element styling and overriding properties
我使用的是预先存在的样式按钮组件和大部分原始样式,但是 'top' 和 'right' 属性需要更新。
我尝试了以下方法:
const StyledButton = styled(Button)`
right: -5px;
top: 40px;
`;
我认为这会将样式扩展到原始组件,但它似乎并没有提供。任何帮助将非常感激。
通常,在这种情况下,这只是底层组件未传递 className
属性的问题。我发现,对于将要成为 shared/re-used 的组件,在其根元素中设置 {...props}
可能会有所帮助,以确保人们可以在该元素上覆盖他们需要的任何内容。
例如
const Button: React.FC = ({ text, ...props }) => {
return <button {...props}>{text}</button>
}
我使用的是预先存在的样式按钮组件和大部分原始样式,但是 'top' 和 'right' 属性需要更新。
我尝试了以下方法:
const StyledButton = styled(Button)`
right: -5px;
top: 40px;
`;
我认为这会将样式扩展到原始组件,但它似乎并没有提供。任何帮助将非常感激。
通常,在这种情况下,这只是底层组件未传递 className
属性的问题。我发现,对于将要成为 shared/re-used 的组件,在其根元素中设置 {...props}
可能会有所帮助,以确保人们可以在该元素上覆盖他们需要的任何内容。
例如
const Button: React.FC = ({ text, ...props }) => {
return <button {...props}>{text}</button>
}