CSS Sourcemap с использованием Extract Text Plugin /CSS-загрузчик Webpack

Я пытаюсь создать исходную карту CSS из веб-пакета. Однако в настоящее время генерируемый файл css.map в основном пуст.

{"version":3,"sources":[],"names":[],"mappings":"","file":"si-styles.css","sourceRoot":""}

Я понимаю, что мне нужно добавить что-то похожее на ниже

css-loader?sourceMap

Но я не уверен, как я связываю это с importLoaders = 1, который в настоящее время у меня есть в моем webpack.config.js. Любая помощь будет принята с благодарностью.

const webpack = require('webpack');
const path = require('path');
//post css
var precss       = require('precss');
var autoprefixer = require('autoprefixer');
var ExtractTextPlugin = require("extract-text-webpack-plugin");
var postcssImport = require('postcss-import');

module.exports = {

  context: __dirname + '/frontend',
  devtool: 'source-map',
  entry: "./index.js",
  output: {
    filename: 'bundle.js',
    path: path.join(__dirname, './static')
},
  module: {
    loaders: [
      {
        test: /\.js$/,
        loader: 'babel',
        exclude: /node_modules/,
        query: {
          presets: ['es2015']
        }
      },
      {
        test:   /\.css$/,
        loader: ExtractTextPlugin.extract('style-loader', '!css-loader?importLoaders=1!postcss-loader')
      }
    ]
  },
  plugins: [
    new ExtractTextPlugin("si-styles.css")
  ],
  // postcss: [
  //             precss,
  //             autoprefixer({ browsers: ['last 2 versions']  })
  // ]
   postcss: function(webpack) {
        return [
            postcssImport({ addDependencyTo: webpack }), // Must be first item in list
            precss,
            autoprefixer({ browsers: ['last 2 versions']  })
        ];
    },

}

1 ответ

Решение

Я только что нашел пример с правильным способом сделать это. Я использовал '&', чтобы связать вместе, т.е.

 {
    test:   /\.css$/,
    loader: ExtractTextPlugin.extract('style-loader', '!css-loader?sourceMap&importLoaders=1!postcss-loader')
  }
Другие вопросы по тегам