FlowRouter强制忽略全局触发器

时间:2016-07-08 08:45:28

标签: javascript meteor flow-router

我有一个如下设置的FlowRouter触发器:

FlowRouter.triggers.enter([function(context,redirect){
  if(!Meteor.userId()) {
    FlowRouter.go('home');
  }
}]);

如果他们没有登录,则会将用户重定向到主页。我想要做的是设置另一条路线:

FlowRouter.route('/:name', {
  name: 'menu',
  action() {
    BlazeLayout.render('MenuLayout');
  }
});

我想做的是允许用户访问/:name路由,即使他们没有登录,但显然全局触发器阻止我这样做,因为它只是将我重定向到主页如果我在注销时尝试访问/:name路由。

有什么办法可以让这条特定路线忽略全局触发?

2 个答案:

答案 0 :(得分:0)

我设法通过触发路线内的重定向来绕过它,而不是设置全局触发器。

如果有人有任何其他方法,我很乐意看到它们。

答案 1 :(得分:0)

这应解决问题:

FlowRouter.triggers.exit([trackRouteExit], {except: ["home"]});