【问题标题】:Ember communicate between child componentsEmber 子组件之间的通信
【发布时间】:2015-11-21 02:35:42
【问题描述】:

我正在尝试制作一个标题组件,它有几个内部组件, 例如一个按钮,其中一个会打开一个侧边菜单,该菜单也是一个子组件。

如何将一个子组件的动作定位到另一个子组件?

在这种情况下,将按钮组件中的打开动作定位到覆盖组件?

{{#header-block class="main-nav"}}

  {{button-icon icon="fi-torso" class="nav-action left" openMenu=(action "open" target=) }}

  {{#overlay-block}}
    {{#side-menu}}
      <p>side menu one</p>
    {{/side-menu}}
  {{/overlay-block}}

{{/header-block}}

【问题讨论】:

    标签: ember.js components ember-cli


    【解决方案1】:

    你不能,至少不能使用公共 API。您之前可能已经阅读过这篇文章,但 Ember 的组件遵循“数据向下,操作向上”的方法。为了做你想做的事,你必须从按钮组件发送一个动作到你的控制器,根据那个动作改变一些数据,然后将这些数据传递给覆盖组件。两个组件之间不能直接通信。

    【讨论】:

    • 这个顶部有很多文章。 This one 可能会给你一些想法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-19
    • 2021-02-07
    • 2017-12-25
    • 2016-07-19
    • 2021-03-11
    • 2014-12-21
    • 2018-02-11
    相关资源
    最近更新 更多