LESS - 从URL导入另一个文件

3
我发现可以使用@import命令从URL导入另一个less文件(例如@import(reference) "https://s3-us2.amazonaws.com/s.cdpn.io/18728/pure.less"),但我希望它是可配置的。我正在使用Visual Studio,我的less文件包含在父解决方案中,我想在其子解决方案中使用此文件,但无法使用相对路径(编译会失败,因为该文件不存在于子解决方案中),所以似乎我唯一的方法是通过URL导入。 我导入URL的问题在于如何根据环境(dev / qa / prod等)更改URL。我想在某个地方配置环境,使LESS文件“知道”获取正确的值。最终,我希望它类似于@import(reference) "https://web..com/pure.less",其中应该是某种变量。希望你理解我的问题。

你在服务器端使用什么?也许你正在寻找一些意大利面 <%= csspath %>。 - celerno
我正在使用C#,但<%= csspath %>应该在LESS文件中,我不认为我能做到。 - NextGen123
1个回答

3
如果您的配置变量是一个LESS变量,在调用导入语句时可以访问它,那么您可以简单地在导入语句中使用变量插值: (点击此处查看有关变量插值的更多信息)
@import "settings"; // this is where @environment: "dev"; is set
@import (reference) "https://web.@{environment}.com/pure.less";

实际上,我想从配置文件(如web.config)中获取环境值,有什么方法可以做到吗? - NextGen123
1
嗯,至少这不是LESS的内置功能。可能您需要编写一个脚本,读取web.config并创建上述设置文件,其中包含编译LESS到CSS所需的LESS变量。 - Marvin

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接