Используемая переменная color-mod() в CSS не работает с помощью webpack postcss-загрузчика

#webpack #postcss #postcss-loader #postcss-color-mod-function #postcss-custom-properties

#веб-пакет #postcss #postcss-погрузчик #postcss-цвет-мод-функция #postcss-пользовательские свойства

Вопрос:

Рассмотрим этот упрощенный пример веб-пакета

webpack.config.js

 module.exports = (env, options) =gt; {  return {  module : {  rules : [  {  test : /.css$/,  use : [  { loader : 'postcss-loader' },  ],  },  ],  },  plugins : [  ]  }; };  

postcss.config.js

 module.exports = (api) =gt; {  return {  plugins : [  ['postcss-custom-properties'],  ['postcss-color-mod-function'],  ],   } };  

файл.css

 :root {  --myvar: color-mod(#1BB749 w( 10%) s( 1%)); }  .test1 { color: color-mod(#1BB749 w( 10%) s( 1%)); } .test2 { color: var(--myvar); }  

Выход есть

 .test1 { color: hsl(137.69230769230768, 56.4140127389%, 46.1764705882%); } .test2 { color: color-mod(#1BB749 w( 10%) s( 1%)); }  

Почему color-mod() in .test2 не обрабатывается? У меня есть правильный порядок плагинов, в котором postcss-пользовательские свойства, во-первых, обрабатывают переменную, а во-вторых, функция postcss-color-mod должна обрабатывать color-mod (), но она не обрабатывается.

Решение заключается только в использовании функции postcss-color-mod в разделе плагинов webpack, а не в разделе module.rules, но это негативно влияет на производительность при обработке всего пакета с функцией postcss-color-mod во время просмотра или разработки сервера с горячей перезагрузкой. Поэтому я хотел бы, чтобы это работало в разделе module.rules, как и ожидалось. Спасибо.