为什么Intellisense不能用于Bootstrap较少的变量?
问题是:@gray
和variables.less
中的任何其他变量(在bootstrap.less
中引用)带有“未声明变量”错误,但LESS编译为CSS符合预期,颜色正确设置为#555555。
正如在this question中所说的那样,它更令人烦恼而不是问题,因为智能感知会丢失,所有变量都必须在没有Intellisense帮助的情况下输入和记住。
与上述问题不同,我使用的是VS2013和Web Essentials 2013,两者都在今天更新,但问题仍然存在。
有关如何解决这个问题的任何建议吗?
少代码
// _MasterLayout.LESS
@import "/bootstrap/bootstrap.less";
@header-height: 120px;
@footer-height: 240px;
html {
height: 100%;
color: @gray;
}
header {
position: relative;
height: @header-height;
// ...
CSS生成的代码
...
html {
height: 100%;
color: #555555;
}
...
答案 0 :(得分:3)
您可以为less文件添加引用路径。这与js文件中的工作方式相同,为您提供该文件的智能感知。
因此,对于您的情况,您将需要引用bootstrap variables.less文件。
示例强>
// _MasterLayout.LESS
/// <reference path="/bootstrap/variables.less" />
html {
color: @grey; // Should have intellisense now.
}
答案 1 :(得分:1)
由于编译没问题,我不知道为什么Intellisense失败了给定的代码,但是,以下解决方案将解决它。
考虑以下文件结构:
- Content
- bootstrap
- bootstrap.less
- variables.less
- anythingelse.less
- master.less
而不是在bootstrap folter之前使用/
导入:
// _MasterLayout.LESS
@import "/bootstrap/bootstrap.less";
在bootstrap文件夹之前没有/
导入:
// _MasterLayout.LESS
@import "bootstrap/bootstrap.less";