2014-11-05 3 views
1

с Meteor 1.0, у меня есть бесконечный цикл в hook onBeforeAction. (Create_game называется навсегда)Iron-Router бесконечная петля onBeforeAction

onBeforeAction: function(){ 

if(Meteor.userId()){ 

    Meteor.call('create_game', this.params._id, 1, function(error, result){ 
    if (error) 
    console.log(error); 
    else{ 
    game_sus = result; 
    Session.set('gamesolo_id', game_sus); 
    } 
    }); 
} 
this.next(); 

}, 

waitOn: function() { return Meteor.subscribe('game', Session.get('gamesolo_id))} 

Бесконечный цикл из-за сессии переменной причины, если я удалить его, я не ввести в петлю. Я не знаю, является ли это ошибкой из-за новой версии или чего-то еще, но знаете ли вы, как я могу это исправить? Я попытался использовать глобальную переменную вместо переменной сеанса, но я не подписался таким образом.

ответ

2

onBeforeAction реактивная, так что если вы установите переменную Session в Meteor.call обратного вызова, то onBeforeAction будет работать снова

вы можете использовать OnRun для этой установки сеанса

Смежные вопросы