在SASS中是否有等效的isset或null合并运算符?

Arm*_*est 2 variables sass null-coalescing

我想设置一个变量,如果它还没有设置.

所以...

_layout.scss:

$page-width: 1100px;
Run Code Online (Sandbox Code Playgroud)

但是,在我的_module.scss文件中,我不希望依赖_layout.scss

我想做这样的事情:

$page-width = $page-width ?? 960px; 
// If $page-width exists, use it, otherwise set it to a default of 960px;
Run Code Online (Sandbox Code Playgroud)

我想在SASS 3.2中更喜欢的东西.我在这里找到了解决方案,否则:

global-variable-exists是在Sass中触发错误

Moh*_*mad 6

我相信你正在寻找变量默认值,而SASS支持它们.变量默认值允许您分配给变量,如果它们尚未!在值的末尾分配使用.

在您的情况下,您可以在_layout.css以下位置使用它:

$page-width: 1100px;
Run Code Online (Sandbox Code Playgroud)

然后在_module.scss你可以

$page-width: 960px !default;
Run Code Online (Sandbox Code Playgroud)

这大致相当于说assign $page-width to 960px unless $page-width is already defined.

查看有关默认变量的文档.