css - 在 Material-UI 中,如何使用 makeStyles 在嵌套样式规则中引用生成的类名?
问题描述
使用makeStyles
时,创建嵌套规则时如何引用生成的类名?
例如,我有一个“容器”类,其中包含嵌套的“项目”类元素。我想在样式定义中引用生成的“项目”类。我可以使它适用于自定义的非生成类(“自定义”),但相同的策略不适用于生成的类名。
https://codesandbox.io/s/material-demo-311tn?file=/demo.js
import React from "react";
import { makeStyles } from "@material-ui/core/styles";
const useStyles = makeStyles({
container: {
"& > .custom": {
"&:first-child": {
backgroundColor: "grey"
}
},
// How do I make this work?
"& > .item": {
"&:first-child": {
color: "white"
}
}
},
item: {
padding: "20px"
}
});
export default function Hook() {
const classes = useStyles();
return (
<div className={classes.container}>
<div className={`${classes.item} custom`}>Hello</div>
<div className={`${classes.item} custom`}>World!</div>
</div>
);
}
解决方案
$
用 a而不是 a为类名添加前缀.
所以,而不是
"& > .item"
做
"& > $item"
推荐阅读
- c - LDR 在 ARM 中的 uint8_t 变量上的行为?
- node.js - Material-UI 无法导入滑块
- android - 在 RecyclerView 中删除的最后一项应用程序崩溃
- c++ - 如何保存文件夹的视图
- javascript - .each() 不会推送重复的项目
- c# - 构造表达式树时出现未处理的 InvalidOperationException
- java - 在 Kotlin 中以编程方式应用语言的 Android 问题
- azure-application-insights - 为什么 Log Analytics 和 Application Insight 日志不支持相同的查询语法?
- sql - 当我尝试在主机上进行迁移时出现错误,我该怎么办?
- javascript - JS不会将POST请求中的数据传给php文件,否则php收不到