-
-
Notifications
You must be signed in to change notification settings - Fork 393
Closed
Labels
Description
I am losing my mind. I have googled for hours and don't know what else to try. I am moving from EWP to this module and I can't get to produce one css file. I have also updated to latest vue-loader.
Webpack Confg
const ManifestPlugin = require("webpack-manifest-plugin");
const CleanWebpackPlugin = require("clean-webpack-plugin");
const OptimizeCssAssetsPlugin = require("optimize-css-assets-webpack-plugin");
const { VueLoaderPlugin } = require("vue-loader");
var MiniCssExtractPlugin = require("mini-css-extract-plugin");
module.exports = {
context: __dirname + "/assets",
entry: {
"details-page": "./js/details-page.js",
index: "./js/index.js",
common: "./js/common.js",
styles: "./css/styles.css"
},
optimization: {
concatenateModules: true,
// runtimeChunk: true,
minimizer: [
new OptimizeCssAssetsPlugin({
cssProcessorOptions: {
safe: true
}
})
],
splitChunks: {
cacheGroups: {
commons: {
test: /[\\/]node_modules[\\/]/,
name: "vendors",
chunks: "all"
},
"styles-compiled": {
name: "styles-compiled",
test: /\.css$/,
chunks: "all",
enforce: true
}
}
}
},
output: {
path: __dirname + "/clashleaders/static/",
filename: "js/[name].js"
},
resolve: {
extensions: [".js", ".vue", ".json"],
alias: {
vue$: "vue/dist/vue.esm.js"
}
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: ["babel-loader"]
},
{
test: /\.vue$/,
loader: "vue-loader"
},
{
test: /.*flags.*\.(svg)$/,
loader: "file-loader",
options: {
name: "[name]-[hash].[ext]",
outputPath: "flags/",
publicPath: "/static/flags/"
}
},
{
test: /\.svg$/,
exclude: [/flags/],
use: {
loader: "svg-url-loader"
}
},
{
test: /\.(sass|scss|css)$/,
use: [
MiniCssExtractPlugin.loader,
{
loader: "css-loader",
query: {
importLoaders: 1
}
},
{
loader: "postcss-loader",
options: {
ident: "postcss",
plugins: loader => [
require("postcss-import")(),
require("postcss-cssnext")({
features: {
customProperties: { warnings: false }
}
}),
require("postcss-font-magician")()
]
}
},
"sass-loader"
]
}
]
},
plugins: [
new ManifestPlugin(),
new MiniCssExtractPlugin({
filename: 'css/[name].[contenthash].css'
}),
new CleanWebpackPlugin([
__dirname + "/clashleaders/static/css",
__dirname + "/clashleaders/static/js",
__dirname + "/clashleaders/static/flags"
]),
new VueLoaderPlugin()
]
};
if (process.env.NODE_ENV === "production") {
module.exports.devtool = "#source-map";
module.exports.output.filename = "js/[name].[chunkhash].js";
}Version
mini-css-extract-plugin@0.4.0
vue-loader@15.0.4
Bug
NODE_ENV='production' webpack --progress --mode production
Produces this...
When I do ag --css "player-comparison" which is a class that I know is in one of the vue files I get
Does this make sense? Wouldn't it make sense to get all css files in the combined css. My config and package files.
Reactions are currently unavailable

