我有一个 .less 文件,其中包含一些使用另一个文件中定义的变量的定义。
例子:
body {
font-family: @baseFontFamily;
font-size: @baseFontSize;
color: @textColor;
}
最初,IntelliJ 将变量显示为未定义。当我用 Lessc 编译时,我会得到这样的错误:
TypeError: Cannot call method 'charAt' of undefined at getLocation (C:\PATH\npm\node_modules\less\lib\less\parser.js:212:34) at new LessError (C:\PATH\npm\node_modules\less\lib\less\parser.js:221:19) at Object.toCSS (C:\PATH\npm\node_modules\less\lib\less\parser.js:385:31) at C:\PATH\npm\node_modules\less\bin\lessc:107:28 at C:\PATH\npm\node_modules\less\lib\less\parser.js:434:40 at C:\PATH\npm\node_modules\less\lib\less\parser.js:94:48 at C:\PATH\npm\node_modules\less\lib\less\index.js:116:17 at C:\PATH\npm\node_modules\less\lib\less\parser.js:434:40 at C:\PATH\npm\node_modules\less\lib\less\parser.js:94:48 at C:\PATH\npm\node_modules\less\lib\less\index.js:116:17
经过一些阅读后,我确定这意味着我的代码中某处存在错误。我自然而然地认为这是由于变量定义不起作用。我用变量注释掉了这些行,lessc 可以很好地编译我的元素。
但是,即使在我添加了适当的@import 以便定义了变量(以及未注释变量的行)之后,我还是再次收到编译时错误。有什么我想念的吗?
最佳答案
已发现问题。父文件夹和子文件夹中有“config.less”文件。将 config.less 的内容从子版本移至父版本解决了我遇到的问题。
关于css - 使用另一个文件中的变量时,.less 文件无法编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11785589/