我在Meteor中使用bootstrap,并通过bootstrap.less
中的public
命令导入import
文件夹中安装的main.less
个文件:
@import "public/bower_components/bootstrap/less/bootstrap.less";
在它下面,我可以开始使用bootstrap mixins,例如.clearfix()
和text-hide()
,它们编译得很好。
但是,当我想将自己的less
代码抽象到单独的文件apply.less
中并将该文件导回main.less
时,现在看起来像这样:
@import "public/bower_components/bootstrap/less/bootstrap.less";
@import "apply.less";
我现在收到错误
=> Errors prevented startup:
While building the application:
client/less/apply.less:10:2: Less compiler error: .clearfix is undefined
这真的很奇怪。这是Meteor的问题吗?
我发现的另一件事 - 如果我把这个空的mixin定义
.clearfix(){}
在我的apply.less
文件的顶部,事情将再次正常编译。
之前是否有人遇到此问题并找到了解决方法?
答案 0 :(得分:2)
将您的第二个文件重命名为apply.lessimport
并将其导入为:
@import "apply.lessimport";
基本上,较少的包查找目录树中具有“.less”扩展名的每个文件,并将其单独编译为CSS,无论该文件是否被另一个文件导入。
当它找到一个带有“.lessimport”扩展名的文件时,会将其添加到已监视文件列表中,但实际上并不会编译或对其执行任何操作。