sendAction不适用于ember js中的组件

时间:2016-10-06 10:01:29

标签: ember.js

sendAction不适用于组件。在视图中使用组件并将组件中的操作发送到视图时。

确认-dailog.js

    import Ember from 'ember';
    export default Ember.Component.extend({
    actions:{
       closeConfirmDialog:function(){
          this.sendAction('onCancel');
       }
   }

})

确认-dailog.hbs

<div class="dialog" id="dialog">
   <div class="text">{{text}}</div>
   <div class="button"{{action 'closeConfirmDialog'}}>Cancel</div>
</div>

modal.js

import Ember from 'ember';
export default Ember.View.extend({
   layoutName: 'components/modal-box',
   actions:
   {
       closeDialog:function()
        {   
            console.log('called model closedialog')
        },
   }
})

模态-box.hbs

<div class="dialog" id="dialog">
    {{yield}}
    {{confirm-dialog onCancel="closeDialog" text="Would you like to close the modal"}}
</div>

当我点击取消按钮 closeConfirmDialog 操作被调用并从那里我尝试发送 closeDialog 操作但是显示错误没有处理动作& #39; closeDialog&#39;

here i have added screenshot of ui

Ember:1.8.1

Ember数据:1.13.7

把手:1.3.0

jQuery:1.11.1

1 个答案:

答案 0 :(得分:-1)

视图将从Ember 2.0 API中删除。 http://emberjs.com/deprecations/v1.x/#toc_ember-view

我建议您将view替换为Component。 此外,根据您的要求,ember-elsewhere addonember-modal-dialog最合适。