Используя CSS-модули, как я могу применить глобальный служебный класс к нескольким элементам без дублирования стиля декларация?
Например, вот компонент React без модулей CSS. Соответствующая строка - это div
с двумя классами: widget
и _3 _...
/* components/widget.jsx */
class Widget extends Component {
render() {
return (
<div className="widget clearfix">
<div className="widget-alpha">Alpha</div>
<div className="widget-beta">Beta</div>
</div>
);
}
}
.clearfix
- это глобальный служебный класс, который я хочу применить ко многим элементам моего приложения:
/* util/clearfix.scss */
.clearfix {
&:before, &:after { content: " "; display: table; }
&:after { clear: both; }
}
Я видел различные способы импорта .clearfix
в модуль CSS, но в каждом случае объявления стилей переопределяются для каждого случая применения класса. Вот один пример:
/* widget.scss */
.widget {
// other styles
composes: clearfix from '../util/clearfix.scss';
}