2016-04-12 3 views
0

Я использую функцию, если функция пробела не проверяет, проверял ли пользователь свой адрес электронной почты. В производстве, я предполагаю, из-за задержки, экран отображает это уведомление, а затем меняется через секунду, если электронное письмо было проверено. Есть ли способ замедлить загрузку страницы, чтобы статус электронной почты пользователей был проверен до загрузки страницы?Проверка состояния электронной почты пользователя перед загрузкой страницы

<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> 

ответ

1

Задержка прийти, потому что в первый раз шаблон оказал Meteor.user() объект еще не был полностью загружен. Затем он загружается и реагирует на разделы, которые меняются местами.

При загрузке объекта пользователя необходимо показать экран загрузки/счетчик. Как вы это сделаете, будет зависеть от того, какой маршрутизатор вы используете.

+0

вы можете мне точку в правильном направлении для flowrouter – bp123

+0

https://meteorhacks.com/flow-router-and-subscription-management/ –

0

Я считаю, что это то, что Майкл предлагал. Заверните вам шаблоны:

{{#if Template.subscriptionsReady}} 

{{/if}}