我真的很沮丧,因为我找不到关于这个主题的任何有用的资源。
我只想查看我的.css文件,使用post css的插件来转换它们,最后将它们导出到我的/public文件夹,就像我已经对我的.jsx文件所做的那样
这是我的web包配置
const path = require('path');
const webpack = require('webpack');
var ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
entry: path.resolve('src/index.jsx'),
output: {
path: path.resolve('public'),
filename: 'bundle.js'
},
resolve: {
extensions: ['*', '.js', '.jsx']
},
devServer: {
publicPath: "/",
contentBase: "./public"
},
module: {
rules: [
{
test: /\.css$/,
exclude: /node_modules/,
loader: ExtractTextPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: 'css-loader',
options: {
modules: true,
localIdentName: '[name]__[local]___[hash:base64:5]'
}
}, {
loader: 'postcss-loader',
options: {
plugins: function() {
return [require('lost'), require('postcss-cssnext'), require('postcss-import')]
}
}
}
]
})
}, {
test: /\.jsx?$/,
use: [
{
loader: 'babel-loader',
options: {
presets: ['es2015', 'react']
}
}
],
exclude: /(node_modules|bower_components)/
}
]
},
plugins: [new ExtractTextPlugin("main.css")]
}发布于 2017-03-24 06:48:06
我假设您使用的是webpack2
如果你想单独转储你的css文件,你需要ExtractTextPlugin。这是我的css加载器,它可以工作
我在webpack的配置中定义了post css插件,因为这样它就会停留在一个地方。希望这能有所帮助:
var ExtractTextPlugin = require('extract-text-webpack-plugin');
...
...
module.exports = {
...
...
module: {
rules: [
...
...
{
test: /\.css$/,
exclude: /node_modules/,
loader: ExtractTextPlugin.extract(
{ fallback: 'style-loader',
use: [{
loader: 'css-loader',
options: {
modules: true,
localIdentName:'[name]__[local]___[hash:base64:5]'
}
},
{
loader: 'postcss-loader',
options: {
plugins: function() {
return [
require('autoprefixer')
]
}
}
},
]
})
},
}发布于 2017-03-26 15:03:06
也许你的插件创建的不正确。
试一试
return [require('lost')(), require('postcss-cssnext')(), require('postcss-import')()](注意调用插件创建的() )。
另外,您是否真的在使用import/require()来包含css?如果不是,你应该,没有什么神奇的东西将球化你的css :)
https://stackoverflow.com/questions/42988207
复制相似问题