2014-10-30 161 views
2

原谅我,如果这是一个绝对愚蠢的问题,但我花了一天试图解决这个问题,但不能。所以,我正在使用最近被重新命名为useraccounts的帐户模板。具体来说,我使用的是未版式的版本。在我家的路线(使用铁路由器),我有以下代码:当用户登录时Flash的登录屏幕在Meteorjs

Router.configure({ 
    loadingTemplate: 'loading' 
}); 

Router.map(function() { 
    this.route('home', { 
    path: '/', 
    onBeforeAction: function(pause) { 
     return AccountsTemplates.ensureSignedIn.call(this, pause); 
    } 
    }); 
}); 

Router.onBeforeAction('loading'); 

但是,当我打开了主页,有这样的闪光显示的登录页面,然后在家里模板负荷高达。理想情况下,应该在用户登录时显示进度条,并且所有内容都可以顺利运行。

我试着用我发现的铁路由器进程来解决这个问题,并不适用于Meteor 1.0。然后我尝试整合nprogress,但是这没有奏效。那么解决方案是什么?

+0

您正在使用哪种版本的iron:router? – 2014-10-30 16:27:15

+0

@将其使用版本1.0.0 – 2014-10-30 16:44:55

+1

铁路路由器1.0版本进来了很多变化。您应该查看Chris Mather最近关于更改的内容并更新您的代码。不知道这是否会解决它,但你的代码至少会是最新的。 https://www.youtube.com/watch?v=SLd6fDi5UYE – 2014-10-30 16:47:37

回答

2

我会将onBeforeAction更改为与此相符的东西,并不保证这会起到很好的作用,但它至少会使您将最新的0.9.4铁路路由器更改为1.0.0。

Router.map(function() { 
    this.route('home', { 
    path: '/', 
    onBeforeAction: function() { 
     if (! Meteor.userId()) { 
     this.render('loading'); 
     } else { 
     this.next(); 
     } 
    } 
    } 
}); 
+0

我可以用{{if loggingIn}}帮助程序作为接受的答案来解决我的问题(可能与您的问题稍有不同)http:// stackoverflow .COM /问题/ 26575551 /流星需要时方知-IF-孤单-A-currentuser有或没有 – phocks 2016-05-23 04:18:10

0

UserAccounts(原AccountsTemplates)现在有(因为正矢量1.8.0)的ensureSignedIn插件铁路由器。 不再闪烁!

请参阅有关Content Protection的更新文档以了解如何使用它。

声明:我是UserAccounts的开发人员