【问题标题】:Include Backbone template html synchronously [duplicate]同步包含主干模板html [重复]
【发布时间】:2015-03-13 23:34:05
【问题描述】:

我正在尝试找到一种方法,将我的 Backbone 模板放在与 HTTP 请求中从服务器发送的主文件不同的 HTML 文件中。这样,我可以更轻松地查看页面的布局骨架,而不必筛选所有会导致 HTML 代码混乱的 Backbone 模板。

我看到的一个解决方案是这样的:

  <head>
    <script>
        $(function(){
            $("#includedContent").load("/LoginViewPartials.html");
        });
    </script>
 </head>

但是,这似乎不起作用,可能是因为 (1) 这是异步加载另一个 html 文件而不是同步加载以及 (2) 将我的模板包含在第二个 HTML 文件中的整个方法可能完全有缺陷。

是否有将 Backbone 模板放在单独的 HTML 文件中的最佳做法? JST 模板允许您将模板放在 JavaScript 文件中,这是最好的解决方案吗?

【问题讨论】:

    标签: javascript jquery html templates backbone.js


    【解决方案1】:

    您可以使用 jQuery 的 Deferred / Promise 功能。

     $.when(something).then(doSomething);
    
         var that = this;
    
         var templateRetrieved = this.getTemplate();
    
         $.when(templateRetrieved).then(function(template){
           var html = that.renderTemplate(template, data);
           that.$el.html(html);
         });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-09-30
      • 1970-01-01
      • 2012-05-11
      • 1970-01-01
      • 2017-03-12
      • 2017-10-07
      • 1970-01-01
      • 2013-08-19
      相关资源
      最近更新 更多