Webpack:感叹号分隔的加载器列表已被删除

问题描述 投票:0回答:1

我正在接管一个其他人已经停止维护的小型反应工具项目。但是,我无法让它运行。 这是 webpack 配置的问题,我尝试以尽可能小的尺寸重建它,但我无法让它运行。

这是当前的文件

const path = require('path');
const webpack = require('webpack');

module.exports = {
 entry: './client/index.js',
 output: {
  path: path.join(__dirname, 'client'),
  filename: 'bundle.js'
 },
 module: {
     rules:[{
                test: /\.(js|jsx)$/,
                exclude: /(node_modules)/,
                loader: 'babel-loader',
                options: {
                    presets: ['es2015', 'react']
                }
            },
            {
                test: /\.css$/,
                loader: "style-loader!css-loader"
            }],
        
        },
      resolve: { extensions: ['*', '.js', '.jsx'],
        alias: { 'react-dom': '@hot-loader/react-dom'  } },
}
    

这是我遇到的错误:

Error: Compiling RuleSet failed: Exclamation mark separated loader lists has been removed in favor of the 'use' property with arrays (at ruleSet[1].rules[1].loader: style-loader!css-loader)

webpack webpack-dev-server
1个回答
29
投票

错误消息表明您必须使用 use 数组进行配置(例如:

use: ['style-loader', 'css-loader']
而不是
loader: "style-loader!css-loader"
。以下是来自 webpack 网站的示例。

module.exports = {
  module: {
    rules: [
      {
        test: /\.css$/i,
        use: ['style-loader', 'css-loader'],
      },
    ],
  },
};

您可以在https://webpack.js.org/loaders/style-loader/

查看详细信息
© www.soinside.com 2019 - 2024. All rights reserved.