0
以下のレンダリングメソッドで「Dialog」という名前のサードパーティコンポーネントを使用しています。ご覧のように、コンポーネントには複数のclassNameがあります。私は "SURFACE" classNameを持つdivに関連付けられた幅をオーバーライドさせる小道具を含むStyledDialogというスタイルのコンポーネントを作成したいと思います。これはStyled-Componentsで行うことができますか?または私のアプリにソースコードを持ち込み、手動で処理する必要がありますか?あなたの説明に基づいてサードパーティ製コンポーネント内の子要素のスタイル
render() {
const { className, children, onClose, open, ...otherProps } = this.props;
const ariaHiddenProp = open ? {} : { 'aria-hidden': true };
return (
<aside
className={classnames(
ROOT,
{
[ANIMATING]: this.state.animating,
[OPEN]: open,
},
className
)}
onClick={(e) => {
if (onClose) onClose(e);
}}
onTransitionEnd={() => {
this.setState({ animating: false });
}}
{...ariaHiddenProp}
>
<div
className={SURFACE}
onClick={(e) => {
e.stopPropagation();
}}
{...otherProps}
>
{children}
</div>
<div className={BACKDROP} />
</aside>
);
}