如何从ember 2.0

时间:2015-10-22 21:11:50

标签: ember.js

我试图从路线呼叫控制器动作。

setupController(controller, model) {


        controller.set('model', model);

        //controller.send('showInvite');
        controller.send('switchTabByName',model.get('name'));


        if(!this.get('state.user.hasCopiedInviteLink')) {
            controller.send('showInvite');
        }

但我无法得到" publish.continue没有任何事情可以处理行动' switchTabByName'。"

我试图在没有动作的情况下直接调用方法,但也没有工作。我怎样才能做到这一点?

这是我在控制器中的动作阻止

actions: {

        switchTabByName(tabName){
                //console.log('Will switch to tab ',tabName);
                let tab = this.get('tabs').find((item)=> {return item.get('name')===tabName; } );
                this.switchTab(tab);

        },

1 个答案:

答案 0 :(得分:2)

这是我第一次自动回答我的问题,无论如何我还没有完全满意,所以我最终这样做了

this.controllerFor('publish').send('switchTabByName',model.get('name'));

我不明白为什么这有效而不是后来。但是,如果有人遇到同样的问题,这种情况就会发生。希望这有帮助