wake-up-neo.com

Postcss-loader Autoprefixer funktioniert nicht mit Webpack 3

Ich versuche, eine Reihe von Loadern zu verwenden, um alle SCSS-Dateien mit ExtractTextPlugin in eine Datei zu extrahieren. Innerhalb der Reihe von Ladern verwende ich das autoprefixer-Plugin, das in postcss-loader verwendet wird. Nichts scheint jedoch vorangestellt zu werden!

Meine Webpack-Konfiguration lautet wie folgt:

webpack.config.js

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

const config = {
  context: __dirname,
  entry: {
    app: [
      path.resolve(entrypath),
    ],
  },
  module: {
    rules: [
      {
        test: /\.scss$/,
        use: ExtractTextPlugin.extract({
          fallback: 'style-loader',
          use: [
            'css-loader',
            'sass-loader',
            {
              loader: 'postcss-loader',
              options: {
                plugins: () => [autoprefixer()]
              }
            }
          ]
        }),
      },
    ],
  },
  output: {
    path: path.join(__dirname, '../app/assets/javascripts/generated/'),
  },
  plugins: [
    new ExtractTextPlugin({
      filename: 'compiled-draft-document-scss.css',
      allChunks: true
    }),
  ],
};

module.exports = config;

Meine Ausgabe scheint gut zu sein, mit der Ausnahme, dass keines der Präfixe hinzugefügt wird. Nachfolgend sind die relevanten Versionen der Pakete aufgeführt, die ich verwende:

"extract-text-webpack-plugin": "3.0.1",
"webpack": "^3.1.0",
"style-loader": "^0.19.0",
"css-loader": "^0.23.1",
"moment": "^2.11.1",
"postcss-loader": "^0.10.1",
"sass-loader": "^6.0.6",
6
Xenyal

Aus postcss-loaderREADME :

Verwenden Sie aftercss-loader und style-loader, aber before andere Präprozessorlader wie z. sass|less|stylus-loader.

Ihre Laderkette sollte also sein:

[
  'css-loader',
  {
    loader: 'postcss-loader',
    options: {
      plugins: () => [autoprefixer()]
    }
  },
  'sass-loader'    
]
14
KyTrol

Fügen Sie in Ihrer package.json-Datei Folgendes hinzu

"browserslist": [
    "> 1%",
    "last 2 versions"
]
0
Theopips