2015-01-30 2 views
1

Я пытаюсь отобразить шаблон «spotresult» с некоторой переменной (из Session.get()). Я потратил много времени на это, но я не нашел ответа ... Не могли бы вы мне помочь?Meteor Ironrouter - как подождать (с шаблоном загрузки) Session.get?

https://git.geekli.st/balibou/hackaton_volant/tree/master/cerfvolantspatial

Спасибо большое!

//router.js 
Router.configure({ 
    layoutTemplate: 'layout', 
    loadingTemplate: 'loading' 
}); 

Router.route('/', {name: 'spot'}); 

// 1.Normal rendering 
//Router.route('/spotresult',{name: 'spotresult'}); 

------------------------------------- ----------------------------------------

// 2. First attempt 
//Router.route('/spotresult', { 
// name: 'spotresult', 
// action: function() { 
// if (this.ready()) 
//  this.render(); 
// else 
//  this.render('loading'); 
// } 
//}); 

//3. Second attempt 
//var waitingSession = function() { 
// if (!this.ready()) { 
// this.render(this.loadingTemplate); 
// } else { 
// this.next(); 
// } 
//} 
// 
//Router.onBeforeAction(waitingSession, {only: 'spotresult'}); 

Формат макета:

<template name="layout"> 
    <div class="container"> 
    {{> header}} 
    </div> 
    <div class="container mainyield"> 
    {{> yield}} 
    </div> 
</template> 

Загрузка шаблона: Шаблон

<template name="loading"> 
    {{>spinner}} 
</template> 

Точечный:

<template name="spot"> 
    <div class="spot"> 
    {{#if currentUser}}  
     <p class="text-center">Bonjour, bienvenue sur votre profil</p> 
    {{else}} 
     <h4 class="text-center">Bonjour, pour connaître la vitesse du vent, remplissez le champs ci-dessous !</h4> 
     <form role="form" class="new-spot"> 
     <div class="form-group"> 
      <label for="email">Spot :</label> 
      <input name="lieu" type="text" class="form-control" id="lieu" placeholder="Entrez un lieu"> 
     </div> 
     <button type="submit" class="btn btn-default">Valider</button> 
     </form> 
     {{#if windspeed7}} 
     {{>spotresult}} 
     {{/if}} 
    {{/if}} 
    </div> 
</template> 

ответ

1

я думаю, что проблема здесь, замените этот код.

Template.spot.helpers({ 
    showSpinner:function(){ 
    if(Session.get("windspeed7" === ''){ 
     return true; 
    }else{ 
     return false;   
    } 
    } 
}); 

И добавить этот помощник в другой помощник

{{#if showSpinner}} 
    {{else}} 
    {{>spinner}} 
    {{/if}} 

Это должно работать

+0

Hummm просто попробовал два пути .. (среди тех, что ...) и он не оказал никакого отношения:» ( – Benjamin

+0

очень любезно с вами, я буду доступен в понедельник днем ​​(время в франции) ... это нормально для вас? :) – Benjamin

+0

Здравствуйте @Ethaan Я отправил вам письмо по электронной почте вчера на ваш gmail, чтобы сказать, что я не был " t доступно вчера :( Но сегодня хорошо :) – Benjamin

Смежные вопросы