Files
fonteditor/build/build-css.js
2016-02-29 17:35:08 +08:00

55 lines
1.2 KiB
JavaScript

/**
* @file 单独编译css文件
* @author mengke01(kekee000@gmail.com)
*/
var path = require('path');
var fs = require('fs');
var less = require('less');
var BASE_DIR = process.cwd();
// 默认的文件列表
var DEFAULT_FILES = [
'css/main.less',
'css/preview.less'
];
main(process.argv.slice(2));
function main(fileList) {
var list = fileList.length ? fileList : DEFAULT_FILES;
list.forEach(function (filePath) {
filePath = path.resolve(BASE_DIR, filePath);
less2css(filePath);
});
}
function compileLess(code, options, onsuccess) {
less.render(code, options).then(function (output) {
onsuccess(output.css);
}, function (error) {
throw error;
});
}
function less2css(filePath) {
if (!fs.existsSync(filePath)) {
throw new Error('file not exist:' + filePath);
}
var paths = [
__dirname
];
var options = {
relativeUrls: true,
compress: true,
paths: paths,
filename: filePath
};
compileLess(fs.readFileSync(filePath, 'utf-8'), options, function (code) {
fs.writeFileSync(filePath.replace(/\.less$/, '.css'), code);
console.log('build less success:' + filePath);
});
}