【发布时间】:2017-04-15 18:38:04
【问题描述】:
我正在尝试在我的 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 更改其属性。
【问题讨论】:
-
我遇到过这个关于 next.js 的讨论,也许会出现一些答案或最终修复:github.com/vercel/next.js/discussions/19417
标签: reactjs css-modules