VS2013中的Bootstrap较少变量 - 失败智能感知和未声明的变量

时间:2014-06-17 19:23:48

标签: twitter-bootstrap-3 visual-studio-2013 less web-essentials

为什么Intellisense不能用于Bootstrap较少的变量?

问题是:@grayvariables.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;
}

...

2 个答案:

答案 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";