如何将模板渲染到全局组件/插座中

时间:2015-07-16 16:24:11

标签: ember.js components outlet

我有一个关于将路线渲染到组件/插座的问题。

我希望有一个位于应用程序模板中的组件,其作用类似于模态/弹出窗口。

渲染路径时,我想将模板渲染到组件中,当内容发生变化时,在打开/关闭弹出窗口的组件中运行一些逻辑。

我希望有人可以告诉我如何做到这一点?

目前我在应用程序模板中有一个组件,其中有一个命名的插座(见下文)。我可以将路径渲染到指定的插座中,但是我无法弄清楚如何在内容发生变化时获取内容中的更改。单击不同的链接将更改该插座的内容。

有什么想法?完成我想要做的事情的更好方法是什么?

应用程序/模板/ application.hbs

{{#primary-popover}}
  {{outlet 'primary-popover'}}
{{/primary-popover}}

/app/profile/route.js

import Ember from 'ember';

export default Ember.Route.extend({

  renderTemplate() {
    this.render('profile', {
      outlet: 'primary-popover'
    });
  }
});

1 个答案:

答案 0 :(得分:0)

我认为解决问题的最佳方法是使用液体火http://ef4.github.io/liquid-fire/#/modals。它是由ember核心团队库推荐的,也得到了很好的支持。它具有很好的模态组件,可以使用link-to组件或通过this.transitionTo以编程方式触发。