v2.6 的更新适用于 VS 2012,我安装了 Web Tools 2012.2 更新,但我注意到 v2.5.1 版本中不存在的一个问题(我现在降级以修复)是LESS 文件中的 @import 行在编译时不再定位引用的文件。
除非@import 行中引用的文件位于同一物理文件夹中,否则编译器会出错。如果存在任何路径信息,例如“../../style/common.less”,编译器将返回错误响应,并且不会创建生成的 CSS 文件。
我得到的错误是它找不到文件并且路径信息被截断为第一个父路径构造或没有。所以,它正在寻找“../style/common.less”或“style/common.less”。两者之间似乎断断续续。
有关可能相关的问题,请参阅:LESS importing CSS and relative paths
更新: 确认预期行为在 LESS v1.3.1 及更低版本中正常工作。
我通过 Visual Studio 扩展更新对话框更新到 Web Essentials v2.6。然后我替换了路径 X:\Users\{USER}\AppData\Local\Microsoft\VisualStudio\11.0\Extensions\{HASH}\Resources\Scripts\less-1.3.0 中的 LESS 脚本文件的内容.js(最初是 v1.3.3,Web Essentials v2.6 更新)带有版本 1.3.0、1.3.1、1.3.2、1.4.0-beta、1.4.0 和 1.4 的脚本.1.编译仅适用于 1.3.1 及更低版本。
我想知道在删除对@import-once 的支持时是否出现问题。
更新 2: Web Essentials 的 2.7 版仍然表现出这种行为,但也可以按照上述方法进行修复。
最佳答案
2.6 有 1.3.3 版本的官方 LESS 编译器。它可能有一个错误。我将调查此问题并在修复后发布更新。
感谢您报告此事!
更新:已修复!
截至 2013 年 7 月 16 日,这已针对 VS 2012 进行了验证和修复。
Web Essentials 2.8 版解决了这个问题中的问题,因此如果您从 Visual Studio 2012 中再次更新或通过手动安装扩展,您将能够使用 LESS 编译器来处理相关的@import 语句。
它只适用于 LESS 1.3.3(与扩展一起打包的版本),但这应该不是问题,因为它现在开箱即用。
要查看扩展的 v2.8 中还有哪些更新,请查看更改日志: http://vswebessentials.com/changelog
感谢 Mads Kristensen 和帮助解决此问题的其他团队成员!
更新:VS 自动更新
VS 2013 扩展的 v2.8.1 已推送到 Visual Studio 扩展库。您应该收到 VS 自动更新消息或转到“工具 > 扩展和更新...”菜单项并从那里更新。
关于css - LESS 编译器和相关 @import 引用在 Web Essentials 2012 v2.7 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15691713/