如何在与 webpack 捆绑时将 SASS 变量转换为原生 CSS 变量?

Posted

技术标签:

【中文标题】如何在与 webpack 捆绑时将 SASS 变量转换为原生 CSS 变量?【英文标题】:How do I convert SASS variable to native CSS variable while bundling with webpack? 【发布时间】:2021-09-14 02:09:43 【问题描述】:

我需要在捆绑文件中使用原生 CSS 变量来代替 SASS 变量。 例如,我想在输出捆绑文件中将 SASS 变量“$warning”替换为“var(--warning)”。

【问题讨论】:

【参考方案1】:

在您定义变量的 SASS 文件中,您可以像这样重新组织定义

//style.scss

// Define CSS variables
:root 
    --warning: red;


// Connect them with SASS variable
$warning: var(--warning);

body 
    color: $warning;

它会被编译为

:root 
  --warning: red;


body 
  color: var(--warning);

注意:对于制表符缩进的 SASS 语法(.sass 文件):root 会抛出语法错误,所以在前面写上反斜杠(/

// style.sass

\:root 
  --warning: red;

【讨论】:

以上是关于如何在与 webpack 捆绑时将 SASS 变量转换为原生 CSS 变量?的主要内容,如果未能解决你的问题,请参考以下文章

在 Webpack 2 中使用 TypeScript 加载 SASS 模块

如何使用 webpack 预加载 SASS 自定义实用程序(变量和 mixins)

Vue Typescript 组件库 - 使用 Webpack 和 SASS

在没有Webpack的情况下从NPM模块解析Sass @import

公开通过 webpack 捆绑的 javascript 全局变量

Webpack sass 加载器无法识别全局变量文件