把手缩小了HTML

时间:2015-11-23 23:34:21

标签: node.js express handlebars.js

在Node.js Express应用程序中,有一种方法可以在将所有Handlebars模板发送到渲染器之前将其缩小吗?

我考虑过创建一个在HTML响应体上进行缩小的Express中间件 - 但我很快意识到这种效果非常低,因为每次HTTP请求都会发生缩小。

必须有一种缩小.hbs模板并将其缓存到服务器端的方法吗?

3 个答案:

答案 0 :(得分:0)

这就是诀窍: https://github.com/helpers/handlebars-helper-minify

唯一的问题是您必须在每个模板中手动包含帮助程序:

从模块的Github页面:

{{#minify removeComments="true"}}
  {{> header }}
{{/minify}}

{{#minify removeEmptyElements="true"}}
  {{> body }}
{{/minify}}

{{#minify removeComments="true"}}
  {{> footer }}
{{/minify}} 

答案 1 :(得分:0)

另一种解决方案是使用命令行中的html-minifier

选项

--ignore-custom-fragments "/{{[{]?(.*?)[}]?}}/"

此正则表达式会忽略{{}}之间的所有内容,并将其余部分缩小为HTML。

答案 2 :(得分:0)

仅添加下一个标志“ --continue-on-parse-error”,以下命令对我有用:

html-minifier --input-dir [SOURCE_DIR] --output-dir [TARGET_DIR] --file-ext hbs --collapse-whitespace --continue-on-parse-error --remove-comments --minify-css true --minify-js true