我想使用this npm module来压缩文件,但我有点被文档所困。
在linux shell中:
npm install brotli # npm@4.1.2 # brotli@1.3.1
node # v6.9.4然后在节点内部:
var fs = require('fs');
var brotli = require('brotli');
brotli.compress(fs.readFileSync('myfile.txt')); // output is numbers
fs.writeFile('myfile.txt.br', brotli.compress(fs.readFileSync('bin.tar')), function(err){ if (!err) { console.log('It works!');}});
"It works!"但文件里也全是数字...
我从来没有在node中使用过这样的stream和fs,有人能解释一下如何处理这个问题吗?谢谢!
发布于 2019-06-05 18:17:40
使用这个简单的JS代码,您可以将每个*.html *.css *.js文件压缩到您选择的文件夹中(在本例中为/dist)。
const fs = require('fs');
const compress = require('brotli/compress');
const brotliSettings = {
extension: 'br',
skipLarger: true,
mode: 1, // 0 = generic, 1 = text, 2 = font (WOFF2)
quality: 10, // 0 - 11,
lgwin: 12 // default
};
fs.readdirSync('dist/').forEach(file => {
if (file.endsWith('.js') || file.endsWith('.css') || file.endsWith('.html')) {
const result = compress(fs.readFileSync('dist/' + file), brotliSettings);
fs.writeFileSync('dist/' + file + '.br', result);
}
});https://stackoverflow.com/questions/41753210
复制相似问题