【问题标题】:Ember.js: inline handlebars template renders at root element of appEmber.js:内联车把模板呈现在应用程序的根元素
【发布时间】:2014-05-28 16:03:40
【问题描述】:

在我们的页面上,我们有一个应用程序“索引”与 id 为“root”的根元素相关联。我正在尝试将一个非常简单的车把模板插入页面内联(在此应用程序内部)。

<div id="root">
... 
    <script type="text/x-handlebars"> (this is nested about 5 levels into "root")
      {{foo}}
    <script>
...
</div>

但是,当页面加载时,我发现结果是变形占位符移动成为“根”的第一个孩子(即使在标记中,它是非常嵌套的)。

这里发生了什么?无论我将这个内联模板放在哪里,它都会一直到这个地方?如何将其保留在标记中的位置?

【问题讨论】:

    标签: javascript templates model-view-controller ember.js handlebars.js


    【解决方案1】:

    脚本模板的位置与其在页面中的放置位置无关。您可以将它添加到文档的头部,它也会被放置在那里,因为它是 application 模板(因为它没有命名)。您的应用程序的结构是使用路由器定义的。

    嵌套路由示例:

    http://emberjs.jsbin.com/OxIDiVU/151/edit

    此外,如果您希望您的应用程序从不同的元素开始,您可以在应用程序上设置rootElement

    App.rootElement = '#fooId';
    

    rootElement 示例:

    http://emberjs.jsbin.com/bucasumo/1/edit

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      相关资源
      最近更新 更多