【问题标题】:Webpack 2 Extract Text Plugin with Options带有选项的 Webpack 2 提取文本插件
【发布时间】:2017-07-23 19:34:38
【问题描述】:

我正在尝试使用新的 Webpack 2 配置将选项传递给 css 加载器:

{
  test: /\.css$/,
  use: ExtractTextPlugin.extract({
    loader: 'css-loader',
    options: {
      minimize: {
        discardComments: {
          removeAll: true,
        }
      },
    },
  }),
},

但是这些选项不起作用。 我做错了什么?

【问题讨论】:

    标签: webpack webpack-2 css-loader extract-text-plugin


    【解决方案1】:

    Minimize 似乎没有您尝试调用它的参数:

    如果由模块系统指定,默认情况下 css-loader 会最小化 css。

    在某些情况下,缩小会破坏 css,因此您可以为其提供一些选项。 cssnano 用于缩小,您会找到 list of options here

    您还可以使用最小化查询参数禁用或强制缩小。

    {
      test: /\.css$/,
      use: [
        {
          loader: 'css-loader',
          options: {
            minimize: true || {/* CSSNano Options */}
          }
        }
      ]
    }
    

    ExtractTextPlugin.extract() 中,不应使用loaderoptions,而应使用usefallbackpublicPath(请参阅docu)。 use 参数与加载器本身的 use 参数采用相同的参数,所以最后你应该得到类似:

    {
      test: /\.css$/,
      use: ExtractTextPlugin.extract({
        fallback : 'style-loader',
        use : {
          loader: 'css-loader',
          options: {
            minimize: true || {/* CSSNano Options */}
          }
        }
      })
    }
    

    https://github.com/webpack-contrib/css-loaderhttps://github.com/webpack-contrib/extract-text-webpack-plugin

    【讨论】:

    • 如何使用提取文本插件做到这一点?即当我们在 css-loader 的地方使用提取文本插件时如何将选项传递给 css-loader?
    • 上面的use描述也可以用在ExtractTextPlugin.extract({})里面。需要usefallback,根据官方文档:github.com/webpack-contrib/extract-text-webpack-plugin
    猜你喜欢
    • 1970-01-01
    • 2017-09-08
    • 2017-11-05
    • 1970-01-01
    • 1970-01-01
    • 2017-05-19
    • 2017-07-13
    • 2018-09-16
    • 1970-01-01
    相关资源
    最近更新 更多