gpt4 book ai didi

less - 如果未设置,则设置 LESS 变量

转载 作者:行者123 更新时间:2023-12-03 23:54:26 26 4
gpt4 key购买 nike

如果尚未定义,是否可以将 LESS 变量设置为给定值?

我似乎只能找到 solutions for SASS.

最佳答案

重要备注 :事实证明,对这种技巧的需求往往恰好是 XY 问题(由于误解了 Less 变量语义)。通常情况下,没有真正的用例你真的想要这个(在 Less 中,你总是定义一个默认值(所以它总是存在)被随意覆盖)。所以在使用下面的技巧之前,请确保它不是 something else you want actually .

如果您需要为可能已经定义的相同范围(即全局或本地)提供此类变量,则非常简单(自 v1.4.0 起):

@bar: 41; // comment/uncomment to test

.define-bar-if-not-defined() {@bar: 42}
.define-bar-if-not-defined(); // exposes a variable only if it's not already in this scope

#using-global-bar {
global-bar: @bar;
}

#using-local-bar {
@bar: 43; // comment/uncomment to test
.define-bar-if-not-defined();

local-bar: @bar;
}

但是,如果您尝试将其用于局部作用域中使用的全局/父作用域变量,则此方法将不起作用(如果您在不确定原始变量可能出现的作用域时需要通用方法,则这可能是一个问题从):
#using-unknown-bar-in-local-scope {
// ... some code ...

.define-bar-if-not-defined(); // won't override local @bar (if any) but always overrides global and parent scope @bar

bar: @bar;
}

在这种情况下,我不知道任何直接的解决方案(例如,没有一些可以在保护表达式中使用的内联 javascript 黑客)

关于less - 如果未设置,则设置 LESS 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18414668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com