灰烬组件动作不冒泡

时间:2015-10-05 23:45:01

标签: javascript ember.js handlebars.js

我发现了这个问题的重复,但我仍然没有复制我看到的所有例子的结果。我正在使用一个Ember.component并试图将其操作冒充到它的父路由器(我之前也尝试冒泡到控制器)。

这是我的代码: Search-bar.hbs模板

//------Search-Bar.hbs------//
<button class="btn btn-purple btn-lg" type="button" {{action 'submitSearch'}}>
  Search
  <i class="ace-icon fa fa-search icon-on-right bigger-110"></i>
</button>

Search-Bar Component.js

//------Search-Bar.js------//
import Ember from 'ember';

export default Ember.Component.extend({
  actions: {
    submitSearch() {
      this.sendAction('internalAction');
    }
})

父-Template.hbs

  {{inputs/search-bar internalAction='myAction'}}

父-Route.js

import Ember from 'ember';

export default Ember.Route.extend({
  actions: {
    myAction() {
      alert('myAction is called');
    }
  }
});

为什么这不起作用?我console.log()&#39; d看起来它调用我的submitSearch()动作的一切,但无论发生什么事情,它都不会冒泡到父母那里......

1 个答案:

答案 0 :(得分:3)

代码本身看起来很好。请务必重新检查拼写错误的实际代码以及文件的路径。如有必要,您可以在Ember Inspector中查看预期路径。