用于漂亮打印 HTML 的模块?

问题描述 投票:0回答:2

我正在开发一个 grunt 构建文件,它会点击 URL 并将输出写入静态 HTML 文件。我点击的 url 已压缩 HTML,我想在写入静态文件之前将其打印出来。有什么好的模块可以做到这一点吗?我环顾四周,似乎 Max Ogden 的 html PrettyPrinter 是我最接近的选择(https://github.com/maxogden/commonjs-html-prettyprinter)。也许如果我将它与 grunt-shell 任务或其他任务结合起来?实际上,我更愿意只需要 grunt 中的一个模块并说漂亮(my-file.html),然后使用 fs 编写它,但到目前为止这被证明是难以捉摸的。

node.js npm commonjs gruntjs
2个回答
19
投票

您找到了所需的所有资源。该模块会为您完成。

var html = require("html");
var data = '<h2><strong><a href="http://awesome.com">AwesomeCom</a></strong><span>is awesome</span></h2>';
var prettyData = html.prettyPrint(data, {indent_size: 2});
process.stdout.write(prettyData)

看看它的来源


或者您可以使用 child_process 执行 README 中的命令:

html *.html


0
投票

如果您正在寻找替代方案(可能是因为某个项目已被放弃,或者您不喜欢该 API),您可以使用 NPM 的网站来搜索其他方案。这里有几个选项:https://www.npmjs.com/search?q=html%20prettify我按受欢迎程度排序并选择了第一个,pretty

代码最终看起来与接受的答案非常相似:

import pretty from 'pretty';
var data = '<h2><strong><a href="http://awesome.com">AwesomeCom</a></strong><span>is awesome</span></h2>';
var prettyData = pretty(data);
process.stdout.write(prettyData)
© www.soinside.com 2019 - 2024. All rights reserved.