错误:没有加载程序提供的选项/查询。 Webpack 2.2.0-rc.3

时间:2016-12-30 08:37:14

标签: webpack-2

我已经将webpack从rc2更新为rc3,因为我无法通过 npm start 启动我的项目 我得到了那样的错误

> webpack-dev-server

Error: options/query provided without loader (use loader + options) in {
  "test": {},
  "exclude": {},
  "use": "file-loader",
  "query": {
    "name": "[name].[ext]"
  }
}

这是我的配置

  module: {
    rules: [
      {
        test: /\.html$/,
        exclude: /node_modules/,
        use: 'file-loader',
        query: {
          name: '[name].[ext]',
        },
      },
      {
        test: /\.s?css$/,
        exclude: /node_modules/,
        use: [
          'style-loader',
          {
            loader: 'css-loader',
            options: {
              importLoaders: 1,
              modules: true,
              localIdentName: '[name]__[local]_[hash:base64:5]',
            },
          },
          'sass-loader',
          'sass-resources-loader',
          'postcss-loader',
        ],
        query: {
          modules: true,
        },
      },
      {
        test: /\.jsx?$/,
        exclude: /node_modules/,
        use: [
          'babel-loader',
        ],
      },
    ],
  },

回滚到rc2并不能解决问题.. 我相信问题出在rc3中,因为我有另一个项目,它有rc2并且可以启动。在将webpack更新到rc3后,它已经崩溃了

1 个答案:

答案 0 :(得分:17)

您需要编辑配置,因为Webpack 2已更改其架构以声明加载器。

重构这一部分:

{
    test: /\.html$/,
    exclude: /node_modules/,
    use: 'file-loader',
    query: {
      name: '[name].[ext]',
    },
},

到此:

{
    test: /\.html$/,
    exclude: /node_modules/,
    use: [
        {
            loader: 'file-loader',
            query: {
                name: '[name].[ext]'
            }
        }
    ]
},

将此转换应用于您声明的其他加载器,它应该可以工作:)