我正在一个使用 React 的项目中工作,我们正在使用 SASS 编写样式,然后让 webpack 完成剩下的工作。
我们最近才开始使用 CSS 模块(babel-plugin-react-css-modules
准确地说)并且过渡很顺利,除了一件事。
在 CSS 模块之前,我们使用的是 BEM 命名约定。我们经常会在组件的 .scss 文件中做这样的事情:
$block: '.box';
#{$block} {
//css rules
&#{$block}--modifier {
//other rules
}
}
本质上我们是在利用 SASS 的变量插值能力,以便在block
关卡元素的类名很大的情况下少写。
问题是,据我所知,对于这种情况,变量插值不再使用babel-plugin-react-css-modules
.
我收到一个错误,例如
ERROR in ./src/index.jsx
Module build failed: Error: E:/Mitch/Workspace/Projects/testbed/src/index.jsx: Could not resolve the styleName 'box'.
我知道使用范围 CSS 规则,真的不需要再写类似的东西.box__list
了,因为你可以简单地写.list
,因为它的范围是组件,但只是为了好奇,是否可以让 SASS 的变量插值工作babel-plugin-react-css-modules
?