Сохранение пустых / неиспользуемых классов с помощью CSS Loader
Я создаю приложение React через Webpack 2, генерирую CSS через SASS-загрузчик и CSS-загрузчик. Вот моя конфигурация Webpack 2:
loaders: [
{
test: /\.(css|scss)$/,
use: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: {
modules: true,
importLoader: 1,
camelCase: true,
localIdentName: '[local]',
minimize: {
safe: true,
},
}
},
{
loader: 'sass-loader'
}
],
})
},
[...]
]
Я записываю полученный CSS в файл, позволяя приложению React получать имена классов в объекте Javascript для назначения различным элементам HTML.
Одна странность, которую я видел, состоит в том, что пустые классы (селекторы классов, не содержащие реальных стилей) не сохраняются и отбрасываются из списка классов при генерации. Я читал, что CSS-загрузчик использует CSSNano, конфигурация которого по умолчанию удаляет неиспользуемые / пустые классы посредством минификации.
Согласно документации CSS-Loader, вы можете установить опции CSSNano через minimize
вариант. Вот почему я установил safe как true в соответствии с документацией по настройкам CSSNano.
К сожалению, пустые / неиспользуемые классы до сих пор не сохраняются. Мне интересно, правильно ли я передаю опцию CSSNano.
Есть мысли о том, почему пустые классы не существуют?