diff --git a/packages/vite/src/node/plugins/css.ts b/packages/vite/src/node/plugins/css.ts index 1f123e8de1de90..af1f2fd474ef30 100644 --- a/packages/vite/src/node/plugins/css.ts +++ b/packages/vite/src/node/plugins/css.ts @@ -942,7 +942,10 @@ function loadPreprocessor(lang: PreprocessLang, root: string): any { return loadedPreprocessors[lang] } try { - const resolved = require.resolve(lang, { paths: [root] }) + // Search for the preprocessor in the root directory first, and fall back + // to the default require paths. + const fallbackPaths = require.resolve.paths(lang) || [] + const resolved = require.resolve(lang, { paths: [root, ...fallbackPaths] }) return (loadedPreprocessors[lang] = require(resolved)) } catch (e) { throw new Error(