0

我一直在尝试清理我的一些代码,并希望将“侧边栏”部分重构为视图/模板组合,因为有些导航元素需要由在插座中呈现的子视图控制。

目前看起来像这样

Map (Route/View/Template)
  Sidebar (partial) - has {{outlet}}

Other routes render in Sidebar {{outlet}}

现在我想让侧边栏有一个视图,而不仅仅是一个模板,因为我想根据那里呈现的内容来控制一些 UI 更改。

这是一个带有不起作用的示例的jsbin 。我也试过{{render 'sidebar'}},但也没有用。顺便说一句,使用 RC.8。

编辑这里
的 另一个尝试。

4

1 回答 1

1

侧边栏模板应该在应用程序模板(而不是索引模板)中呈现,否则当您输入 /test 路由时它不会显示。

然后在 App.TestRoute 的 renderTemplate 中,您可以在 2 个出口(侧边栏和主)中呈现模板。

App.TestRoute = Ember.Route.extend({
  renderTemplate: function () {
    this.render('test');
    this.render('test_sidebar',{
      into: 'sidebar',
      outlet: 'sidebar'
    });
  }
});

请参阅此jsbin示例。

我希望它有所帮助。

于 2013-08-30T15:29:23.540 回答