Сохранение пустых / неиспользуемых классов с помощью 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.

Есть мысли о том, почему пустые классы не существуют?

0 ответов

Другие вопросы по тегам