在ASP.net内部,我用无点的方式提供动态较少的样式表。我使用查询字符串传递变量。
<link rel="stylesheet" href="~/Content/style.less?&color1={{var1}}&color2={{var2}}>
变量已经在LESS中声明(color1:red,color2:blue),如果它们在查询字符串中传递,我想覆盖这些值。这当前不起作用,因为无点实际上预先来自查询字符串的变量,而less则使用 last 声明的变量。
我看到两个选项,但我不知道如何实现这些:
将较少变量color1和color2设置为可选 - 仅当它们之前未设置时。类似的东西:
color1: color1 || red;
LESS(/ dotless)中是否存在类似的内容?
答案 0 :(得分:0)
Less没有为变量设置默认值的选项,请参阅http://lesscss.org/features/#variables-feature-default-variables,了解您不需要它们的原因,您已经提到最后一个声明获胜(而Less更少使用延迟加载)。 / p>
但在https://github.com/dotless/dotless/wiki/Parameters我发现:
-v --disable-variable-redefines - 使变量的行为更像less.js,因此使用了最后一个变量定义
将此选项设置为false
可以解决您的问题:
<dotless disableVariableRedefines="false" />