首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Cssnano不会删除重复的

Cssnano不会删除重复的
EN

Stack Overflow用户
提问于 2018-09-29 02:43:26
回答 1查看 3.7K关注 0票数 2

我有一个反应web应用程序,我在那里使用CSS模块。我用Webpack来构建这个应用程序。

来自webpack.config.js的相关部分:

代码语言:javascript
复制
  {
    test: /\.css$/,
    use: extractCSS.extract(
    {
      fallback: 'style-loader',
      use: [{
          loader: 'css-loader',
          options: {
            modules: true,
            importLoaders: 1,
            localIdentName: '[name]__[local]___[hash:base64:5]',
          },
        },
        {
          loader: 'postcss-loader',
          options: {
            ident: 'postcss',
            plugins: () => [
              require('autoprefixer')({}),
              require('postcss-discard-empty')({}),
              require('postcss-discard-comments')({}),
              require('postcss-color-function')({}),
              require('postcss-flexbugs-fixes')({}),
              require('cssnano')({
                preset: ['default', {
                  discardComments: {
                    removeAll: true,
                  },
                  colormin: false,
                  cssDeclarationSorter: false,
                }],
              }),
            ],
          },
        },
      ],
    }),
  },

缩小规模似乎奏效了。我可以在CSS中找到一些重复的CSS规则,如下所示

我想知道这是否是我的配置或我正在使用的工具的问题(PostCss和CssNano)

谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-29 03:43:59

之所以会发生这种情况,是因为您有CSS小型程序(cssnano)是postcss-loader。加载器应用于每个分离的文件,因此cssnano看不到其他文件来删除跨文件的重复文件。

使用迷你-css-提取-插件。这个插件也使用cssnano。但是,它在将每个文件连接到一个大包后调用cssnano。因此,cssnano将看到所有的CSS,并且能够在整个包中删除重复的CSS。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52564625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档