설치
npm install @emotion/is-prop-valid
shouldForwardProp 정의
src / utils / mui.ts
import isPropValid from "@emotion/is-prop-valid";
export const shouldForwardProp = (prop: PropertyKey) =>
typeof prop === "string" && isPropValid(prop) && !prop.startsWith("$");
shouldForwardProp 사용
src / components / Example.tsx
================================= shouldForwardProp 임포트
import { shouldForwardProp } from "@/utils/mui";
================================= 컴포넌트 사용
<Container $preview={true}/>
================================= 스타일 정의
type ContainerProps = {
$preview: boolean;
};
const Container = styled(Stack, { shouldForwardProp })<ContainerProps>`
border: ${({ $preview, theme }) => ($preview ? `3px dashed black` : "none")};
`;
예시 코드
'라이브러리 > MUI' 카테고리의 다른 글
[MUI] <Switch/> 컴포넌트 스타일링(너비, 높이, ...) 커스터마이징 예시 코드 (0) | 2025.04.25 |
---|---|
[Next.js + MUI + Emotion] Received true for a non-boolean attribute $preview 오류 해결기 (0) | 2025.04.22 |
[MUI] 컴포넌트에 스타일 프롭스 추가하는 방법 (0) | 2025.04.22 |
[MUI] 캘린더 달력 한국 시간으로 변경하기 (0) | 2025.04.17 |
[MUI] <SwipeableTemporaryDrawer/> 전역 상태로 상태 관리 방법 feat.예시코드 (0) | 2025.04.15 |