我正在使用react-table
,我想将CSS规则应用于类rt-td
,这些规则无法通过其API提供的内容进行访问或修改。
在CSS中,我只会在样式表中覆盖CSS类。但你如何使用样式组件?我听说这是反模式,但我还应该做些什么呢?
答案 0 :(得分:0)
假设ReactTable
导出的组件react-table
的父级是简单的div
。
const Test = () => (
<div>
<ReactTable someProperty={someValue}/>
</div>
)
您可以通过1)将rt-td
的父级转换为ReactTable
和2)注入样式来覆盖{ReactTable
,从而影响styled-components
内的类rt-td
的样式1}}进入前面提到的父母的CSS。
const Parent = styled.div`
.rt-td {
/* your custom style goes here*/
}
`
const Test = () => (
<Parent>
<ReactTable someProperty={someValue}/>
</Parent>
)
通常这就是诀窍。如果rt-td
中react-table
的样式定义由于特异性仍然覆盖了您的自定义定义,请继续在rt-td
内重复类名Parent
(如此.rt-td.rt-td
)直到你的自定义风格获胜。