Firebase 修正角火解析

Firebase 修正角火解析,firebase,Firebase,我想修改以下angularFire代码(摘自文档: ) 因此,如果用户未登录,它也将在页面加载之前登录用户,用户数据将立即准备好使用 这是原件: resolve: { "currentUser": ["simpleLogin", function(simpleLogin) { return simpleLogin.$getCurrentUser(); }] } 这就是我到目前为止所做的: resolve: { "currentUser": ["simpleLogin", f

我想修改以下angularFire代码(摘自文档: ) 因此,如果用户未登录,它也将在页面加载之前登录用户,用户数据将立即准备好使用

这是原件:

resolve: {
  "currentUser": ["simpleLogin", function(simpleLogin) {
    return simpleLogin.$getCurrentUser();
  }]
}
这就是我到目前为止所做的:

resolve: {
  "currentUser": ["simpleLogin", function(simpleLogin) {
    return simpleLogin.$getCurrentUser();
  }],
  "loginUser": ["simpleLogin", function(simpleLogin) {
    return simpleLogin.$login("anonymous", {rememberMe : true} );
  }]
}

但这将导致用户每次登录,从而重置ID(我想是吧?)。我如何有条件地这样做,使它们只在尚未登录时才登录?

与其使用两种解析方法,不如将它们链接在一起。由于$login返回了一个承诺,这是非常顺利的:

resolve: {
  "currentUser": ["simpleLogin", function(simpleLogin) {
    return simpleLogin.$getCurrentUser().then(function(user) {
       if( user === null ) {
          // log in now...
          return simpleLogin.$login('anonymous', {rememberMe: true}); 
       }
       else {
          // logged in!
          return user;
       }
    });
  }]
}

Tony,如果你尝试自动登录,你会遇到弹出窗口阻止程序和其他问题,因为这不是基于用户操作运行的。那么你建议我怎么做?这是一个在线文本编辑器,它们会自动指向一个独特的“pad”,有点像firepad。我需要知道谁在写什么???谢谢(顺便说一下,我是汤姆!)哈海也不想用壁炉!对于匿名登录@katoNo,弹出窗口拦截器是一个问题,而不是匿名登录。在我的评论中,我似乎把大部分事情都搞错了:(很抱歉,托尼·汤米·汤姆。