根据请求实例化变量并编译sass/less文件

Instantiate variable and compile sass/less file on request

本文关键字:sass less 文件 编译 请求 实例化 变量      更新时间:2023-09-26

我想知道是否使用nodejs或其他服务器端语言有一种方法基本上接收请求,例如

http://doman.com/getCSS/?type=4

,然后用sass/less文件中的url参数替换变量的值,然后编译成CSS文件并检索该文件作为对请求的响应。

如果你使用Node.js,你基本上可以这样做,确保你安装了expressless的NPM包:

var express = require('express');
var less = require('less');
var app = express();
app.get('/getCSS/:id', function(req, res){
  less.render('.class { width: ' + req.params.id  + 'px; }', function (e, css) {
    res.send(css);
  });
});
app.listen(3000);

这是一个快速的脚本(没有错误检查或输入验证),它将接受对http://localhost:3000/getCSS/:id的请求,并将给定的id作为LESS代码中的一些变量输出。

# curl http://localhost:3000/getCSS/4
.class {
  width: 4px;
}

当然,您可以通过将参数插入到LESS模板中,以任何您喜欢的方式自由使用这些参数。