我在public/stylesheets
中有两个Less文件。我使用Express.js将它们作为CSS文件提供。
第一个文件one.less
如下所示:
@import "another.less";
h1 {
color: red;
}
第二个文件another.less
如下所示:
p {
color: red;
}
当我尝试加载页面时,服务器退出并显示错误:
file 'another.less' wasn't found.
我也尝试了绝对路径,但它没有用。
这是我的Express.js配置:
app.configure(function(){
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(express.compiler({ src: __dirname + '/public', enable: ['less'] }))
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
答案 0 :(得分:3)
您现在应该使用 connect-less 。 实际上,你在上面使用的原始较少的编译器是连接的一部分,如果你查看当前的问题列表,你会看到TJ选择不再支持连接,因为编译器太不同了(一个“不能让每个人都开心”的案例):
https://github.com/senchalabs/connect/pull/174
您可以在此处查找无连接: https://github.com/MartinodF/connect-less
我会在这里安装安装步骤,但要了解它们可能会过时(如果这不起作用,请查看github页面,并告诉我并且我会同步):
使用NPM安装无连接
npm install connect-less
然后在您的应用中加载它,指定源(和可选的目标)目录
app.use(require('connect-less')({src:__dirname +'/ public /'}));
对于我来说,在带有expressjs 2.5.2和节点6.6的armv7 / Trimslice linux盒子上,这完美无缺。
答案 1 :(得分:2)
编辑: '@import“/ public / stylesheets / two”;'
原始提案不起作用。