así que escribí este complemento postcss que estoy tratando de usar. Lo probé de acuerdo con las pautas de postcss y funcionó como se esperaba hasta que intenté usarlo en un proyecto real.
Aquí está el complemento en GitHub
Estoy tratando de usarlo en una aplicación Vue-cli (Webpack).
Instalé el complemento con npm install . También tengo instalado postcss y postcss-loader (he probado diferentes versiones, reinstalando, pero sin suerte)
Aquí está mi postcss.config.js
module.exports = { plugins: [ require("postcss-vwh"), //... ], };Ok, entonces creé una nueva aplicación mínima (sin vue, solo Webpack 5, css-loaders que incluye la última versión de postcss y el complemento) ¡y funcionó como se esperaba!
Entonces, aparentemente, el problema no está en mi complemento después de todo, sino en vue-cli. Después de horas de intentar que funcione, me queda este mensaje de error:
Syntax Error: Error: PostCSS plugin postcss-vwh requires PostCSS 8.La investigación muestra que este error se puede solucionar actualizando postcss-loader, pero vue-cli me obliga a usar la versión 4, que es la última versión compatible con Webpack 4, en la que se ejecuta mi aplicación vue-cli.
Entonces, ¿hay alguna manera de hacer que mi complemento no sea tan exigente, tal vez hacer que requiera una versión más baja de postcss, para que pueda usarse con Webpack 4?
Así que recibí una respuesta del creador de PostCSS aquí , que básicamente decía que no se recomienda probar y admitir versiones anteriores de postcss. El mejor enfoque es actualizar postcss.
Entonces, lo que hice fue despedirme de vue-cli, creé manualmente una nueva aplicación Webpack 5 / vue desde cero, copié todas mis cosas allí, instalé postcss 8 y ahora está funcionando.