【问题标题】:Express less-middleware not compiling表达较少的中间件不编译
【发布时间】:2015-05-12 03:23:42
【问题描述】:

谁能帮我编译我的css。我不知道为什么我的观点没有得到编译较少

Index.js

// MIDDLEWARE
var express = require('express');
var less = require('less-middleware');
var app = express();

// LESS COMPILER
app.use(less('source/less', {
  "dest": 'public/stylesheets',
  "pathRoot": __dirname,
  "force": true,
  "render": {
    "yuicompress": true
  }
}));

// APP CONFIG
app.use(express.static(__dirname + '/public'));
app.set('views', 'views')
app.set('view engine', 'jade');

// ROUTES
app.get('/', function (req, res) {
  res.render('index');
});

// PAGE NOT FOUND
app.use(function(req, res, next) {
  res.status(404).send('Sorry cant find that!');
});

// WEB SERVER
var server = app.listen(3000, function () {
  var host = server.address().address;
  var port = server.address().port;
  console.log('Example app listening at http://%s:%s', host, port);
});

Index.jade

html
  head
    title Hello
    link(src="stylesheets/global.css" type="text/css")
  body
    h1 Welcome

【问题讨论】:

    标签: node.js express


    【解决方案1】:

    您可以在https://github.com/emberfeather/less.js-middleware/wiki/Examples 阅读有关如何将您的less-middleware 的src 和dest 目录设置到不同目录的信息。但结果是:为了让事情相对简单,源和目标的相对路径必须相同。

    我建议将您的 less 源文件移出 public 以使其更容易,因为它们不应该按原样提供。

    在与您的public 目录相同的目录中创建一个less-src 目录。在less-src 中,创建一个stylesheets 目录并将您的global.less 放在那里。然后将您的 less 中间件使用更改为:

    app.use(lessMiddleware(__dirname + '/less-src', 
        {dest: __dirname + '/public'}));
    

    这会奏效。

    如果你不喜欢在less-src 中有一个stylesheets 目录,那么你需要查看上面链接中关于预处理less 路径的材料。对我来说,就源代码布局而言,以代码复杂性为代价换来的收益微乎其微。但是,如果您觉得值得,那么您就可以这样做。

    【讨论】:

    • 我听取了您的建议,并将 src 从公开中移出,但这仍然无法正常工作
    • 您是否也更改了您的app.use()。我得到了你的确切代码来处理这个变化。
    • 我将问题中的代码更新为现在的代码,但仍然无法正常工作。我需要更少的系统来使用中间件吗?
    • 你的less文件在less-src/stylesheets/global.less?
    • 它位于source/less/global.less,在我的玉石中,我将其称为stylesheets/global.css
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-09
    • 1970-01-01
    相关资源
    最近更新 更多