我想将组件拆分为一个 baseUI 和一个样式:
例如。我的组件.jsx
export default class MyComponent extends React.Component {
...
...
render() {
const { wrapperClassName, className, childClassName } = this.props;
return (
<div className={wrapperClassName>
<div className={className />
<div className={childClassName} />
</div>
)
}
}
StyledMyComponent.jsx
import styled from 'react-emotion'
const StyledMyComponent = styled(MyComponent)(
...
...
)
export default StyledMyComponent
但是,我将任何东西放在样式函数的参数中,它们只会转到 className,有没有办法指定哪些道具转到哪个 className?
我也可以用儿童选择器做一些类似 sass/less 的事情吗?假设是这样的:
const classes = css`
color: red;
span { // this works
color: black;
}
.childClassName { // this doesn't work
color: green;
}
`
<MyComponent className={classes} />