我正在尝试在我的 React 项目中使用 CSS 模块。问题的第一部分是,如果我编写嵌套的 css 类(使用 sass),我不知道我是否可以访问内部的类,因为这些似乎也被编译成唯一的类名。一些代码:
<div className={this.state.visible ? styles.header+" menu-visible" : styles.header}>
<div className="menu">
<a className="link">title</a>
</div>
</div>
.header {
&.menu-visible {
.menu {
display:block;
}
}
}
我有一个包装类,它有时是“菜单可见”的,它会改变所有孩子的属性,在 React 中这样做是不好的做法吗?
如果菜单可见,.header 中有多个类会更改,因此只更改包装类会很方便,我可以以某种方式引用子项吗?这样保持嵌套在scss中?
编辑
我能想到的一种解决方案是将 className="menu" 替换为 className={styles.header.menu} ,但这似乎不起作用。问题是如果它的父级具有菜单可见类,我希望 .menu 更改其属性。