0

有没有办法通过 sendAction 对堆栈组件(组件的嵌套层次结构)调用控制器操作?例如,我有一些带有一些按钮组件的模态组件,我想在调用的控制器上执行一个操作。我还没有看源码。谢谢你的帮助

4

2 回答 2

0

看看 Ember.Instrumentation http://emberjs.com/api/classes/Ember.Instrumentation.html

您可以使用它在更全局的级别上发送和注册事件。

在我的理解中,“仅”使用 sendAction 会使层次结构冒泡。

于 2013-11-14T10:32:01.987 回答
0

关闭行动是您问题的答案。

在控制器中定义操作并将该操作发送到组件,您可以使用组件中的 sendAction。

应用程序/控制器/application.js

import Ember from 'ember';
export default Ember.Controller.extend({
  actions:{
    controllerAction(){
      //
    }
  }
});

在 application.hbs 中包含 my-component 时,

{{my-component controllerAction=(action 'controllerAction') }}

my-component.js,你可以说它this.sendAction('controllerAction')会调用控制器controllerAction方法。

于 2016-10-07T08:08:00.597 回答