Этот вопрос не всегда появляется. Он отлично работает, если я подожду какое-то время загрузки страницы или, если достаточно подождать между щелчками, чтобы изменить язык в этом выпадающем меню. Это для простого многоязычного веб-сайта.Как подождать рендеринга, прежде чем действовать на событие click?
Моего Выпадающий в нав-бар выглядит следующим образом:
....
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="#"> <img src="Pictures/BR-US-SP.png"><b class="caret"></b></a>
<ul class="dropdown-menu" id="langMenu">
<li><a href="#" id="pt-BR" name="pt-BR" value="pt-BR"><img src="/Pictures/1383607461_Brazil.png"></a></li>
<li><a href="#" id="en" name="en" value="en"><img src="/Pictures/1383615303_United-States.png"></a></li>
<li><a href="#" id="es" name="es" value="es"><img src="/Pictures/1383615325_Spain.png"></a></li>
<li class="divider"></li>
</ul>
</li>
....
И событие выглядит следующим образом:
Template.navigation.events({
'click #langMenu': function(event){
currentLang = $(event.target).attr('id');
...
// So some stuff with and re-renders page upon value of currentLang //
...
}
});
Когда он ломает, консоль показывает, что переменная currentLang не определена. Поэтому я предполагаю, что это связано с тем, что шаблон не был предоставлен вовремя, чтобы событие click заработало его значение. Правильно ли это предположение?
Как я могу всегда получать значение currentLang?
Извините. Я провел пару дней, уже изучая его. Однако, поскольку Метеор развивается так быстро, меня путают многие возможные решения, которые я нашел и испытал, которые на самом деле не работали (устарели?). Я не могу получить от Meteor Docs точно, как использовать функции Blaze, когда и как использовать onRendered и т. Д. Есть ли хорошие примеры?
Вместо этого следует использовать совершенно другой подход, используя Iron Router? Если да, то как?
Привет thatgibbyguy, я попробовал это, но я все еще мог воспроизвести ошибку. Кажется, это уменьшает количество ошибок, произошедших с ошибкой, но это только мое впечатление. Я не могу подтвердить это статистически. Я пробовал также с 1000 и все еще мог воспроизвести его. Я искал что-то lilke «дождитесь, пока цель будет готова» или «хотите, пока не будет отображен шаблон x». – Juliomac