我正在努力让登录过程正常运行。基本上,所有路线都应该重定向到" / login"如果用户没有登录。除了" /注册"和" / reset",因为如果你去那里,你显然不会登录。
Router.configure({
layoutTemplate: 'layout'
});
Router.onBeforeAction(function () {
except: ['signup','reset']
if (!Meteor.userId()) {
// if the user is not logged in, render the Login template
this.render('login');
}
else {
this.next();
}
});
Router.route('/', function (){
this.render('app-main-page');
});
Router.route('/signup', function () {
this.render('signup');},
{
name:'signup'
});
Router.route('/reset', function () {
this.render('reset');},
{
name:'reset'
});
// and a bunch of more routes within the app
});
一般情况下,onBeforeAction正在运行,当某人未登录时,将呈现登录模板。然而,"除了"部分无效,这意味着用户无法注册,因为他们被重定向到登录页面。有没有人有任何见解?它似乎是一段非常简单的代码,我完全不知道我在哪里犯了错误。
答案 0 :(得分:0)
onBeforeAction: function() {
..
this.next();
}
使用this,nexr()
离开onBeforeAction
,