Visual studio 2012 带有较少@import的未声明变量。这是什么原因造成的?有办法吗?
我少了2个文件。Globals.less和Site.less。Globals.less包含我的所有全局(go-figure)变量和对CSS重置定义的导入。Site.less包含正在使用的样式 Globals.less:Visual studio 2012 带有较少@import的未声明变量。这是什么原因造成的?有办法吗?,visual-studio-2012,less,Visual Studio 2012,Less,我少了2个文件。Globals.less和Site.less。Globals.less包含我的所有全局(go-figure)变量和对CSS重置定义的导入。Site.less包含正在使用的样式 Globals.less: //Imports @import "CSSReset.less"; //Colors @color-background: rgb(0, 0 , 0); 无网址: @import "Globals.less"; body { background: @color-
//Imports
@import "CSSReset.less";
//Colors
@color-background: rgb(0, 0 , 0);
无网址:
@import "Globals.less";
body {
background: @color-background url('/Images/BackgroundTextureBody.png');
}
问题在于:在Visual Studio中,Site.less中的@color background带有下划线,错误为“Undeclared variable”,但less编译为CSS很好,并且背景颜色被正确设置为#000。这比什么都麻烦,但我失去了智能感知,并且在错误列表中得到了警告。我希望编辑能够像预期的那样,在我编辑Site.less时,能够在Globals.less中“查看”我的声明。我是否做错了什么,这是一个错误,还是我的环境设置不正确?似乎Visual Studio(或其较少的解释器)不理解导入的Globals.LESS中变量的范围
导入变量是一件正常且常见的事情,因此我建议这是Visual Studio设置中的一个错误或缺少功能。事实证明,我使用的是旧版本的Web Essentials 2012。我应该检查但没有做的第一件事是确保我的环境是最新的。将Web Essentials更新到最新版本更正了此问题。要获取特定less文件的intellisense,可以使用与在js文件中获取intellisense相同的方式添加引用路径 示例
/// <reference path="Globals.less" />
@import "Globals.less";
body {
background: @color-background url('/Images/BackgroundTextureBody.png');
}
//
@导入“Globals.less”;
身体{
背景:@color-background-url('/Images/BackgroundTextureBody.png');
}
出于某种原因,这对我来说根本不起作用。我已经安装了标准VS引导程序,试图使用//,如果未声明的变量出现问题,它将拒绝删除。下面是我的bootstrap.less和theme.less@imports。版本2.2。我已将其缩小到这一行中的“|”字符:@import url(“//fonts.googleapis.com/css?family=Open Sans | Roboto”);看起来像是2.2中的一个bug。删除“|机器人”,保存,重新加载,智能感知工作!这对我来说很有效。但是,我仍然可以在错误列表输出选项卡中看到错误日志。当我想在一个没有mixin的文件中使用变量而不实际导入变量定义时,这对我来说是有效的。相反,变量和mixin稍后都会导入到引导文件中。设置
注释可以让intellisense接受这种方法。