У меня был Twitter Typeahead.js, встроенный в приложение Rails в течение некоторого времени и работающий нормально.Почему typeahead.js/bloodhound возвращает «Не могу прочитать свойство« пробелы »неопределенного»
После серии обновлений gem и перемещения некоторых зависимостей к Bower, теперь я вижу ошибку в консоли, а Typeahead.js неправильно вызывается.
Uncaught TypeError: Cannot read property 'whitespace' of undefined
на
queryTokenizer: Bloodhound.tokenizers.whitespace
Что это значит, и как я отладки это?
Мой полный код:
jQuery ->
if $('.country-typeahead').length
countries = new Bloodhound(
prefetch:
url: "../api/countries.json"
datumTokenizer: (datum) ->
Bloodhound.tokenizers.whitespace datum.name
queryTokenizer: Bloodhound.tokenizers.whitespace
)
countries.initialize()
$('.country-typeahead').typeahead null,
name: "countries"
displayKey: "name"
source: countries.ttAdapter()
JSON выглядит следующим образом
[{"id":1,"name":"Aruba"},{"id":2,"name":"Afghanistan":""},{.....etc}]