在MUI5的sx
prop中寻找聪明的条件样式。我曾经使用过的一个例子是:
const statusStyle = (status) => {
switch (status) {
case "aborted":
return "#D66460";
break;
case "queue":
return "#6685F0";
break;
case "processing":
return "#F0E666";
break;
default:
return "#60D660";
}
};
<TableRow
key={job.job}
sx={{ color: statusStyle(status) }}
>
但我想知道有没有人想出了更优雅的东西?
5条答案
按热度按时间lh80um4z1#
如果它只是一个简单的Map,你可以使用一个对象:
如果要有条件地传递样式对象,可以使用扩展语法
...
,这是MUI团队将样式应用于具有不同变体和状态的组件的方式:7uzetpgm2#
这似乎对我有用
...
...
ni65a41a3#
对于希望使用屏幕大小作为条件的任何人,有一个简单的语法可用于修改样式:
w3nuxt5m4#
使用他们的触发器
例如,在滚动条上:
3b6akqbq5#
常数a = 1;
常量homeStyle = {背景:“透明”,框阴影:“无”,位置:“绝对”,顶部:20、};
sx={a == 1?{背景:主页样式.背景}:{背景:“无”}}