在页面加载前检查用户电子邮件状态

时间:2016-04-12 06:19:49

标签: meteor spacebars

我使用除非空格键功能来检查用户是否已验证其电子邮件地址。在制作中,我假设由于延迟,屏幕显示此通知,然后如果电子邮件已经过验证,则会在一秒钟后更改。有没有办法减慢页面加载速度,以便在页面加载之前检查用户的电子邮件状态?

<template name="mainLayout">

        {{#unless currentUser.emails.[0].verified}}
            <p class="alert alert-warning text-center">We have sent you an email to verify your email address. All users must confirm their email address to access the BHR platform.</p>

        {{else}}

        <div id="content" class="content">
            <div class="container">
                {{>Template.dynamic template=main}}     
            </div>      
        </div>

        {{/unless}}

    </div>

</template>

2 个答案:

答案 0 :(得分:1)

延迟是因为第一次呈现模板时Meteor.user()对象尚未完全加载。然后加载并反应切换部分。

您需要在加载用户对象时显示加载屏幕/微调器。如何执行此操作取决于您使用的路由器。

答案 1 :(得分:0)

我相信这是迈克尔的建议。将模板包装在:

{{#if Template.subscriptionsReady}}

{{/if}}