全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页
📅 2026-05-23 5 分钟 ✍️ juanwangdev

CSS 预处理器高级配置

Vite 支持对 Sass/Less 预处理器进行深度配置。

Sass 配置

JavaScript
export default defineConfig({
  css: {
    preprocessorOptions: {
      scss: {
        // 全局变量注入
        additionalData: `@use "@/styles/variables.scss" as *;`,
        // API 选项
        api: 'modern-compiler',
        // 导入路径
        includePaths: ['src/styles']
      }
    }
  }
})

Sass 现代编译器

Bash
npm add -D sass-embedded
JavaScript
export default defineConfig({
  css: {
    preprocessorOptions: {
      scss: {
        api: 'modern-compiler',  // 使用新编译器
        silenceDeprecations: ['legacy-js-api']
      }
    }
  }
})

注意:modern-compiler 编译速度更快。

Less 配置

JavaScript
export default defineConfig({
  css: {
    preprocessorOptions: {
      less: {
        // 全局变量
        additionalData: `@import "@/styles/variables.less";`,
        // Math 模式
        math: 'always'
      }
    }
  }
})

全局变量注入

scss
// variables.scss
$primary: #3498db;
$font-size: 14px;

// 组件中可直接使用
.button {
  color: $primary;  // 无需手动导入
  font-size: $font-size;
}

配置选项对比

选项SassLess
additionalData全局注入全局注入
includePaths导入路径paths
api编译器 API-
math-数学模式

多文件全局注入

JavaScript
export default defineConfig({
  css: {
    preprocessorOptions: {
      scss: {
        additionalData: `
          @use "@/styles/variables.scss" as *;
          @use "@/styles/mixins.scss" as *;
        `
      }
    }
  }
})

Stylus 配置

JavaScript
export default defineConfig({
  css: {
    preprocessorOptions: {
      styl: {
        imports: ['src/styles/variables.styl']
      }
    }
  }
})

要点总结

  • preprocessorOptions 配置预处理器
  • additionalData 全局注入变量/混合
  • api: 'modern-compiler' 使用新编译器
  • includePaths 配置导入路径

📝 发现内容有误?点击此处直接编辑

← 上一篇 CSS 代码分割
下一篇 → Lightning CSS 集成
想查看更多题目和详细解析?
小程序提供完整的题库、模拟考试和详细解析
马上就来

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库