我发现了这个问题的重复,但我仍然没有复制我看到的所有例子的结果。我正在使用一个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()
动作的一切,但无论发生什么事情,它都不会冒泡到父母那里......
答案 0 :(得分:3)
代码本身看起来很好。请务必重新检查拼写错误的实际代码以及文件的路径。如有必要,您可以在Ember Inspector中查看预期路径。