html-minifier node.js TypeError: value.replace is not a function

html-minifier node.js TypeError: value.replace is not a function

我正在尝试使用节点模块 html-minifier 来缩小 html 文件。为此,我创建了这个小 node.js 文件,它应该能够执行此操作

'use strict'

var fs = require('fs');
var minifier = require('html-minifier').minify;

var htmlFile = fs.readFileSync("users/email/test.html");
var output = minifier(htmlFile, {
    removeAttributeQuotes: true
});

process.stdout.write(output);

但是当我 运行 程序时,我得到以下错误。

TypeError: value.replace is not a function

知道为什么会这样。我正在使用 html-minifier

的 4.0.0 版

由于您没有指定文本编码,readFileSync 返回了 Buffer,而不是字符串。见 readFileSync documentation.

如果您知道要使用的编码,可以将其指定为第二个参数:

var htmlFile = fs.readFileSync("users/email/test.html", "utf8");