使用Webpack ExtractTextPlugin获取CSS输出

杰米·霍利迪

我试图让CSS要求使用ExtractTextPlugin在webpack中工作,但没有成功

我想要一个单独的CSS文件,而不是内联任何CSS。

这是我的webpack配置:

var path = require('path');
var webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');

module.exports = {
  devtool: 'eval',
  entry: [
    'webpack-dev-server/client?http://localhost:3000',
    'webpack/hot/only-dev-server',
    './scripts/index'
  ],
  output: {
    path: path.join(__dirname, 'build'),
    filename: 'bundle.js',
    publicPath: '/scripts/'
  },
  plugins: [
    new webpack.HotModuleReplacementPlugin(),
    new webpack.NoErrorsPlugin(),
    new ExtractTextPlugin('styles/styles.css', {
      allChunks: true
    })
  ],
  resolve: {
    extensions: ['', '.js', '.jsx']
  },
  module: {
    loaders: [{
      test: /\.jsx?$/,
      loaders: ['react-hot', 'babel'],
      include: path.join(__dirname, 'scripts')
    },
    {
        test: /\.css$/,
        loader: ExtractTextPlugin.extract('style-loader', 'css-loader')
    }]
  }
};

index.js:

import React from 'react';
import App from './App';

React.render(<App />, document.getElementById('root'));

App.js:

import React from 'react';

require('../styles/app.css');

export default class App extends React.Component {
  render() {
    return (
      <h1>Hello, world.</h1>
    );
  }
}

index.html:

<html>
  <head>
    <link rel="stylesheet" href="/styles/styles.css">
  </head>
  <body>
    <div id='root'></div>
  </body>
  <script src="/scripts/bundle.js"></script>
</html>

styles.css返回404

知道这里可能出什么问题了。如果我不使用ExtractTextPlugin,而只需在config中执行此操作:

module: {
        loaders: [
            { test: /\.css$/, loader: "style-loader!css-loader" }
        ]
    }

然后我将CSS正确地应用于页面,但是显然这不是来自CSS文件

这是我第一次尝试使用webpack,因此可能会出现一些菜鸟错误

有任何想法吗?

马皮

ExtractTextPlugin需要在两个位置添加:在Loader中,以及作为插件。这是从样式表文档中提取的示例

// webpack.config.js
var ExtractTextPlugin = require("extract-text-webpack-plugin");
module.exports = {
    // The standard entry point and output config
    entry: {
        posts: "./posts",
        post: "./post",
        about: "./about"
    },
    output: {
        filename: "[name].js",
        chunkFilename: "[id].js"
    },
    module: {
        loaders: [
            // Extract css files
            {
                test: /\.css$/,
                loader: ExtractTextPlugin.extract("style-loader", "css-loader")
            },
            // Optionally extract less files
            // or any other compile-to-css language
            {
                test: /\.less$/,
                loader: ExtractTextPlugin.extract("style-loader", "css-loader!less-loader")
            }
            // You could also use other loaders the same way. I. e. the autoprefixer-loader
        ]
    },
    // Use the plugin to specify the resulting filename (and add needed behavior to the compiler)
    plugins: [
        new ExtractTextPlugin("[name].css")
    ]
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在 Webpack 和 ExtractTextPlugin 中使用 Font Awesome

来自分类Dev

如何使用Webpack输出独立的CSS?

来自分类Dev

使用webpack捆绑CSS

来自分类Dev

ReferenceError:在Webpack中使用ExtractTextPlugin时未定义窗口

来自分类Dev

尝试使用 webpack 4 从 scss 文件中获取 css 文件

来自分类Dev

Webpack 不转换 SCSS (ExtractTextPlugin)

来自分类Dev

使用Webpack获取git-revision哈希

来自分类Dev

使用webpack css-loader的Sourcemaps

来自分类Dev

使用Webpack分隔字体和CSS

来自分类Dev

使用Webpack从节点模块加载CSS文件

来自分类Dev

Webpack:无法使用url()导入加载CSS

来自分类Dev

使用Webpack导入CSS和JS文件

来自分类Dev

使用webpack,less-loader和extract-text-webpack-plugin避免输出重复

来自分类Dev

使用ExtractTextPlugin时Vue中的带范围CSS失去了范围

来自分类Dev

使用webpack在输出目录中保留文件夹结构

来自分类Dev

Angular2 + Webpack如何使用templateUrl输出html文件?

来自分类Dev

使用webpack将库输出为ES6模块?

来自分类Dev

如何使用gulp最小化webpack输出?

来自分类Dev

使用pysnmp获取输出

来自分类Dev

使用Webpack + CSS组件时导入供应商CSS

来自分类Dev

webpack 使用 extract-text-webpack-plugin 将 css 提取到单独的文件中

来自分类Dev

如何使用无webpack加载程序获取源地图?

来自分类Dev

如何从与Webpack一起使用的MDL中获取SVG

来自分类Dev

如何使用无webpack加载程序获取源地图?

来自分类Dev

使用Webpack加载的CSS时如何停止FOUC

来自分类Dev

禁用javascript时使用loader for CSS-Webpack

来自分类Dev

如何在Webpack中使用CSS中的图像

来自分类Dev

如何在Webpack中使用基础CSS并做出反应?

来自分类Dev

如何在Webpack的`background-image`中使用CSS变量?

Related 相关文章

热门标签

归档