Я использую Meteor с Iron Router и не могу получить typeahead (эта версия: https://github.com/bassjobsen/Bootstrap-3-Typeahead) для работы.Метеор с Typeahead: где вызвать typeahead() на входном элементе?
Вот код:
HomeController = RouteController.extend({
//....
after: function() {
var tags = this.getData().tags;
console.log(tags);
if(tags.length > 0) {
var tags = ['hello', 'world'];
console.log("Adding typeahead for tags to ", $('.input-search')[0]);
console.log("tags: ", tags);
$('.input-search').typeahead({
source: tags,
updater: function(item) {
Router.go('/projects/tag/' + item);
}
});
}
},
У меня есть заголовок, который является частью макета приложения, и имеет вход, как это:
<input type="text" class="form-control input-search" data-provide="typeahead" placeholder="Search">
JQuery в загробной: функция получает входной сигнал правильно. Но вызов typeahead на входе не активирует typeahead правильно: при вводе ввода ничего не происходит.
Однако, если я завершаю вызов typeahead в setTimeout, он работает.
Конечно, всякий раз, когда вы начинаете обертывать вещи в setTimeouts, что-то не так.
Где и когда правильное место для инициализации typeahead при использовании Iron Router?
Я тоже это пробовал и имел ту же проблему: он работает только при завершении в setTimeout. – Dave