Handlebars.js: 车把预编译仍然很慢

创建于 2016-04-24  ·  4评论  ·  资料来源: handlebars-lang/handlebars.js

我正在使用带有把手的 phonegap 但即使我预编译了模板仍然很慢。
也许将脚本放在模板中会导致这种情况。

<table class="table table-striped table-hover">
    <thead>
        <tr>
            <th>IMG</th>
        </tr>
    </thead>
    <tbody>
        {{#each array}}
        <tr>
            <td> 
                <a  href= "{{this}}" class="swipebox" title="My Caption">
                <img src= "{{this}}" alt="image"  width="50" height="50">
                </a>
            </td>
        </tr>
        {{/each}}
    </tbody>
</table>
<script>    
    var table = $('table').dataTable({
        lengthMenu: [[-1, 50, 25, 10], ["Todo", 50, 25, 10]],
        sPaginationType: "full_numbers",
        language: {
        "url": "json/Spanish.json"
        }
    });

</scr{{undefined}}ipt>

所有4条评论

你的 HTML 太糟糕了。 如果没有您的视图模型,就无法解决速度变慢的原因。

这是上下文

  <script type="text/javascript">
        var array = [];

        for (i = 0; i < 3; i++) {
          var src = "img/arrow_ + i + .png";

          array.push(src);

        }
        var context = {"array":array}
        var theCompiledHtml =   Handlebars.templates['events.tmpl'](context);
        $('.render').html(theCompiledHtml);   

    </script>

var theCompiledHtml = Handlebars.templates['events.tmpl'](context);

我不确定您在脚本标签中的功能是什么; 似乎用于迭代图像数组,但我粘贴的用于调用预编译模板的代码不属于那里。

理想情况下,您有一个带有模板调用的应用程序文件,告诉页面将呈现的 HTML 输出到何处。

现在,我认为我所看到的将导致您的预编译模板在渲染之前由浏览器完全评估。 这使得预编译毫无价值。

由于不活动而关闭。

此页面是否有帮助?
0 / 5 - 0 等级