extract-text-webpack-plugin 不创建 CSS 文件

extract-text-webpack-plugin does not create CSS file

我有 webpack.config.js 创建 bundle.js 但由于某些原因它没有创建任何 css 文件,尽管我有 css-loaderstyle-loaderextract-text-webpack-plugin.

我的webpack.config.js

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const HtmlWebpackPluginConfig = new HtmlWebpackPlugin({
  template: './client/index.html',
  filename: 'index.html',
  favicon: './client/asset/favicomatic/favicon.ico'
});
const ExtractTextPlugin = require('extract-text-webpack-plugin');

const BUILD_DIR = path.resolve(__dirname, 'dist');

module.exports = {
  entry: ['./client/src/index.js'],
  output: {
    path: BUILD_DIR,
    filename: 'bundle.js'
  },
  module: {
    loaders: [
      { test: /\.js$/, loader: 'babel-loader', exclude: /node_modules/ },
      { test: /\.jsx$/, loader: 'babel-loader', exclude: /node_modules/ },
      { 
        test: /\.css$/,
        use: ExtractTextPlugin.extract({
          fallback: "style-loader",
          use: "css-loader"
        })
      }
    ]
  },
  resolve: {
    extensions: ['*', '.js', '.jsx']
  },
  plugins: [HtmlWebpackPluginConfig, new ExtractTextPlugin('style.css')]
};

我希望我是在其他地方创建这个捆绑的 css 文件,但我在我的文件夹中没有看到任何 css 文件。

如果有人发现我做错了什么,请告诉我。

谢谢,

我觉得配置不错。

一般:虽然 webpack 加载程序执行特定于资源的任务,但它的源代码需要定义依赖项。在源代码中任何需要 CSS 样式的地方,都需要导入该 CSS 文件。第一次听到可能听起来很奇怪,但这就是 webpack 的工作原理。

Webpack 应该处理依赖关系图中的 CSS 依赖关系。如果未创建输出 css 文件,则可能缺少的部分是源代码中的依赖项声明,即 require("./css-file-here")import "./css-file-here"

来自 webpack 指南 here

This enables you to import './style.css' into the file that depends on that styling.

输出是否显示它处理了 CSS 个源文件的任何迹象?

如果有帮助,请查看此存储库中的 src/entry.js:webpack-bootstrap。在使用它时,您可以尝试查看 bootstrap 样式是如何通过 webpack 应用的。