【问题标题】:Minify jQuery tmpl html templates缩小 jQuery tmpl html 模板
【发布时间】:2014-02-23 02:49:04
【问题描述】:

我想缩小我的 .html 文件。我尝试使用grunt-contrib-htmlmingrunt-processhtml 进行缩小。他们实际上无法缩小。然后我意识到我所有的 html 元素都包含在jQuery.tmpl 中。这些缩小工具似乎没有触及脚本标签。所以我有一堆模板看起来像这样:

<script id='wrapper' type='text/x-jquery-tmpl'>
  <div class='person-wrapper'>
    {{html $item.html()}}
  </div>
  <!-- many html tags -->
</script>

我的问题是如何缩小 (jQuery.tmpl) 模板?我正在使用 Gruntjs 来缩小 .css、.js 文件。但是任何工具或插件都会受到赞赏。

【问题讨论】:

    标签: javascript html templates gruntjs minify


    【解决方案1】:

    尝试查看htmlcompressor。根据他们的文档,它应该压缩模板标签内的代码:

    &lt;pre&gt;&lt;textarea&gt;&lt;script&gt;&lt;style&gt; 标签内的任何内容都会 保留并保持不变(<script type="text/x-jquery-tmpl"> 标记除外,它们被压缩为 HTML)。

    它是 Java 库,但它也有 grunt plugin

    希望对你有帮助。

    【讨论】:

      【解决方案2】:

      如果你使用 sublime text 尝试添加这个包,它会为你缩小它:

      HTML COMPRESSOR.

      【讨论】:

        【解决方案3】:

        并不是完美的解决方案,但我就是这样做的:

        只缩小 HTML 而不包含在脚本标签中,然后在通常导入它们的地方使用服务器端包含。 (在我的例子中,PHP)

        <head>
           <script id='wrapper' type='text/x-jquery-tmpl'>
             <?php require "templates/person.tmpl.min.html" ?>
           </script>
        </head>
        

        【讨论】:

        • 在我的 tmpl.html 中,我有 72 个模板,这意味着 72 个script 标签。 IMO 不能单独缩小所有模板。
        • 粗糙!是的,不是最好的计划。 JS 缩小器对脚本标签不起作用吗?
        • 除此之外:你真的不想在你的应用程序中有 72 个脚本标签,无论是否压缩都是浪费时间和资源。
        【解决方案4】:

        您的服务器应该发送 gzip 压缩的数据。然后不需要任何额外的压缩/缩小。

        编辑:缩小+压缩的好处对于 HTML 应该比 JavaScript 少得多。因为在 HTML 中没有像 JS 那样可以重写的函数或变量名。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-08-18
          • 1970-01-01
          • 2013-05-28
          • 2023-03-14
          • 1970-01-01
          相关资源
          最近更新 更多