【问题标题】:Ember Nested Routes Break Named OutletEmber 嵌套路由中断命名出口
【发布时间】:2017-05-25 12:54:26
【问题描述】:

我有一个名为 engineering 的父路由。 每条路由都扩展了一个 Base.js 路由,它将默认模板以及另一个自定义模板呈现到命名的插座中:

renderTemplate: function (controller) {
    this.render();

    this.render('page-title', {
        outlet: 'pageTitle',
        controller: controller,
    });
},

有一个engineering.hbs 父模板,其中包含两个出口。主要的{{outlet}} 和另一个{outlet 'pageTitle'}}

这对于像 /engineering/indexengineering/someothersite 这样的路由非常有效,但是对于像 engineering/college/courses/description 这样的路由,pageTitle outlett 根本不渲染。

任何建议,或者甚至是从子路由传递数据到父模板的更好方法?

【问题讨论】:

    标签: ember.js


    【解决方案1】:

    想通了。对于未来的访问者,问题在于 render 方法中未包含 into 属性。

    this.render('page-title', {
        outlet: 'pageTitle',
        into: controller.topParent,
        controller: controller,
    });
    

    controller.topParent 是我自己的财产。

    【讨论】:

      【解决方案2】:

      我鼓励为此目的使用ember-elsewhere 插件,而不是使用命名的插座。

      【讨论】:

        猜你喜欢
        • 2013-01-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-19
        • 2016-01-10
        • 1970-01-01
        • 2017-02-15
        相关资源
        最近更新 更多