【问题标题】:npm scripts: need to minify all HTML files in folder (and subfolders)npm 脚本:需要缩小文件夹(和子文件夹)中的所有 HTML 文件
【发布时间】:2016-09-18 16:54:01
【问题描述】:

我想使用 npm run 脚本缩小文件夹(以及其中的任何文件夹)中的所有 .html 文件。理想情况下,所有.html 文件都应该被覆盖(如果不可能,可以使用新文件夹)。假设输入文件夹中会有非HTML文件。

npm 库 minimize 仅适用于每个文件,但不适用于文件夹。

另一个 npm 库 html-minifier 确实接受文件夹作为输入,但如果输入文件夹中存在任何非 HTML 文件,则会失败:

html-minifier --input-dir ./test1 --output-dir ./test2 --html-5 --collapse-whitespace

我需要这个来缩小我的静态网站的 HTML 文件。

【问题讨论】:

  • Grunt 和 gulp 是一对将这个(以及许多其他东西)捆绑到插件中的工具。您可以定义运行哪些插件,然后本地运行或从 npm 运行脚本调用它们。
  • 这确实是添加 Grunt/Gulp 作为npm run 运行的中介的一个选项,但我宁愿避免这样做——npm 脚本旨在替代 Grunt/Gulp。我正在寻找纯npm script 选项。
  • “最小化”是否不适用于 glob?

标签: javascript node.js npm package.json


【解决方案1】:

自从在 SO 上发布原始问题后,html-minifier 添加了忽略非 HTML 文件的功能。现在可以设置目录了,html-minifier遇到非HTML文件也不会报错。

使用示例,取自我的工作 npm 任务:

html-minifier --input-dir ./public --output-dir ./public --collapse-whitespace --file-ext html

现在让我们压缩所有静态网站的 HTML 文件!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-04-29
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多