Closed mizdra closed 1 year ago
I could not figure out how to apply postcssTransformer
.
Perhaps there are two ways.
postcssTransformer
only for files with .css
extensionWarning Use cases that transpile with less and then transpile with postcss are not supported.
export const createDefaultTransformer: () => Transformer = () => async (source, options) => {
const scssTransformer = createScssTransformer();
const lessTransformer = createLessTransformer();
const postcssTransformer = createPostcssTransformer();
if (options.from.endsWith('.scss')) {
return scssTransformer(source, options);
} else if (options.from.endsWith('.less')) {
return lessTransformer(source, options);
} else if (options.from.endsWith('.css')) {
return postcssTransformer(source, options);
}
return false;
};
postcssTransformer
for all file extensionsWarning
postcssTransformer
must acceptstring
(source) andTransformResult
types. The implementation of this interface is somewhat complex.
export const createDefaultTransformer: () => Transformer = () => async (source, options) => {
const scssTransformer = createScssTransformer();
const lessTransformer = createLessTransformer();
const postcssTransformer = createPostcssTransformer();
if (options.from.endsWith('.scss')) {
return postcssTransformer(scssTransformer(source, options), options);
} else if (options.from.endsWith('.less')) {
return postcssTransformer(lessTransformer(source, options), options);
} else (options.from.endsWith('.css')) {
return postcssTransformer(source, options);
}
return false;
};
I think the second method is the better one. However, I don't have much experience with postcss and am not sure. I would like input from users who have a lot of experience with postcss.
.postcssrc.js
is loaded usingpostcss-load-config
.--postcss-config
option so that we can pass a configuration file of any name.