Meteor用户登录

Meteor user login

本文关键字:登录 用户 Meteor      更新时间:2024-01-15

这是我购物车的路由器。

Router.route('/bag', function () {
  //FIXME: upon refresh, Meteor.user() is an empty object it seems?
  if (Meteor.user()) {
    this.render('Bag', {to: 'content'});
  } else {
    Router.go('/login');
  }
});

当您登录并单击链接转到"/bag"时,所有内容都会正确呈现。然而,如果你在"/bag"页面上刷新页面,它会将我重定向到"/login"页面。Meteor有什么让我遗漏的吗?我打错Meteor.user()了吗?

这是因为Meteor.user()集合还没有准备好,还有加载模板吗?

试着把这个

waitOn:function(){
 return Meteor.subscribe('someUsercollectionPublish')
}

要做到这一点,还有更多的选择。

类似于使用密码包中的helper currentUser

{{#if currentUser}}
  <!-- show bags stuff -->
{{else}}
  {{> login}} <!-- render login Template -->
{{/if}}

或者使用CCD_ 4方法CCD_。

var requireLogin = function() {
  if (! Meteor.user()) {
    this.render('login');
  } else {
    this.render('bag');
  }
}
Router.onBeforeAction(requireLogin, {only: 'bags'});