首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未渲染到outlet中

未渲染到outlet中
EN

Stack Overflow用户
提问于 2014-02-17 09:31:07
回答 1查看 239关注 0票数 2

我正在手动渲染一些插座:

代码语言:javascript
复制
Dashboard.IndexRoute = Ember.Route.extend({
    renderTemplate : function ( ) {
        this.render('index');
        this.render('disposition-legend', {outlet : 'dispositionLegend'} );
    },
});

模板:

代码语言:javascript
复制
    <script type="text/x-handlebars" data-template-name="application">
      {{outlet}}
    </script>

    <script type="text/x-handlebars" data-template-name="index">
      <div class="container">
        {{outlet dispositionLegend}}
      </div>
    </script>

    <script type="text/x-handlebars" data-template-name="disposition-legend">
      <div class="row">
        <div class="col-lg-12 well">Legend:&nbsp;
          {{#each controller.content}}
            <span class="label" style="background-color:{{unbound color}};">{{label}}</span>
          {{/each}}
        </div>
      </div>
    </script>

Ember说,这确实是在渲染出口:

代码语言:javascript
复制
Rendering index with default view <Ember._MetamorphView:ember320> Object {fullName: "view:index"}
Rendering disposition-legend with <Dashboard.DispositionLegendView:ember328> Object {fullName: "view:disposition-legend"}

没有错误消息,但是视图ember320和视图ember328都不在DOM中。DOM中存在的惟一视图是与application模板相关的ember299

为什么会这样呢?

(我正在运行ember-1.4.0)

EN

回答 1

Stack Overflow用户

发布于 2014-02-17 09:37:58

IndexRoute试图呈现为application模板,但您希望呈现为index,因此需要传递into: 'index'选项。

代码语言:javascript
复制
App.IndexRoute = Ember.Route.extend({
    renderTemplate : function ( ) {
        this.render('index');
        this.render('disposition-legend', {outlet : 'dispositionLegend', into: 'index'} );
    },
});
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21819275

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档