2015-01-02 2 views
2

У меня есть следующий код для моего железного маршрутизатора signOut маршрут в приложении Meteor JS. Я пытаюсь преобразовать устаревший Router.map в новый синтаксис Router.route, но с трудностями при работе onBeforeAction и onAfterAction. Каков правильный синтаксис Router.route для следующего блока кода?Правильный синтаксис для Router.route для железного маршрутизатора?

Router.map(function() { 

    // sign-out the user then redirect them to the home page 
    this.route('signOut', { 
    path: '/sign-out', 
    onBeforeAction: function() { 
     if (Meteor.userId()) { 
     Meteor.logout() 
     } 
     this.next(); 
    }, 
    onAfterAction: function() { 
     this.redirect('/'); 
    } 
    }); 

}); 

ответ

2
Router.route('/sign-out', function() { 
//here you put things you wanna render, it's empty since you just want to logout and redirect 
}, { 
    name: 'signOut', 
    onBeforeAction: function() { 
     if (Meteor.userId()) { 
     Meteor.logout() 
     } 
     this.next(); 
    }, 
    onAfterAction: function() { 
     Router.go('/'); 
    } 
}); 

И я думаю, вы должны добавить функцию waitOn, потому что не может быть никакого Meteor.user() объекта на первый, если не подписался ранее

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