在使用 MUI 5(Material-UI)时,如果你发现 className
或 sx
属性显示为 [object]
而不是预期的 CSS 类,这通常是因为传递给这些属性的值不是一个字符串,而是一个对象。这种情况可能发生在以下几种情况:
当你传递一个对象给 className
或 sx
属性时,React 会尝试将对象转换为字符串,这通常会导致 [object Object]
的输出。
确保传递给 className
的是一个字符串,而传递给 sx
的是一个样式对象。
import React from 'react';
import { Button } from '@mui/material';
// 错误示例
const WrongExample = () => (
<Button className={{ color: 'red' }}>Click me</Button> // 这里应该是一个字符串
);
// 正确示例
const CorrectExample = () => (
<Button className="custom-class">Click me</Button> // 这里是一个字符串
);
// 使用 sx 属性的正确示例
const SxExample = () => (
<Button sx={{ color: 'red', backgroundColor: 'blue' }}>Click me</Button> // 这里是一个对象
);
通过确保传递正确的值类型,你可以避免 [object Object]
的问题,并正确应用样式到你的 MUI 组件上。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云