无法从组件触发的事件处理程序发送动作

时间:2015-03-02 09:09:43

标签: ember.js ember-cli

我有一个发送动作的组件:

this.sendAction('action', data.files)

在模板中我使用了像这样的组件

{{file-upload url="api/v1/upload" action="finishedUpload"}}

在处理事件的控制器中,我想发送另一个动作(到同一个控制器,但我得到了臭名昭着的TypeError: undefined is not a function

finishedUpload: function(files) {
  this.sendAction('insertImage')
}

如何获取当前控制器的上下文,以便我可以在事件处理程序中发送操作?

1 个答案:

答案 0 :(得分:4)

controller下,您不必使用sendAction,只需像这样使用send

finishedUpload: function(files) {
  //action to same controller
  this.send('insertImage')
}

component中,您必须使用sendAction