У меня проблемы с преобразованием конфигурации моего веб-пакета с устаревших cssnext и cssnext-loader в postcss-cssnext и postcss-loader. Док четко заявляет, что функциональность, которую я пытаюсь воссоздать, была делегирована функциям определенных плагинов, но, похоже, я не могу заставить что-то работать. Один из примеров - переменные css.
Моя текущая рабочая конфигурация веб-пакета выглядит так:
... импорт плагина
var cssnext = require('cssnext');
var autoprefixer = require('autoprefixer');
var customMedia = require("postcss-custom-media");
... конфигурация загрузчика
module: {
loaders: [{
test: /\.css$/,
loader: "style-loader!css-loader!postcss-loader!cssnext-loader",
include: path.join(__dirname, 'src')
}]
},
... конфигурация postcss
postcss: function() {
return [customMedia(), cssnext(), autoprefixer()];
}
Проблема:
Я заменил свой импорт cssnext, чтобы указать на новый модуль postcss-cssnext, и добавил в теперь необходимый модуль для обработки моих переменных css (postcss-custom-properties). Я также удалил cssnext-loader и предполагаю, что postcss-loader может справиться с этим ???
... импорт плагинов
var cssnext = require('postcss-cssnext');
var autoprefixer = require('autoprefixer');
var customMedia = require("postcss-custom-media");
var customProperties = require('postcss-custom-properties');
... конфигурация загрузчика
module: {
loaders: [{
test: /\.css$/,
loader: "style-loader!css-loader!postcss-loader",
include: path.join(__dirname, 'src')
}]
},
... конфигурация postcss
postcss: function() {
return [customMedia(), cssnext(), customProperties(), autoprefixer()];
}
Я вижу, что все мои стили отображаются на странице, но ни одна из переменных css не была оценена. Центральная проблема, похоже, связана с использованием "cssnext-loader". Если я добавлю его обратно, переменные будут работать. Я играл с postcss-import и различными итерациями конфигурации, но, похоже, ничего не работает. Кто-нибудь знает, что я делаю не так? Как я могу заставить работать вместе переменные postcss-cssnext, postcss-loader, css и webpack?