[英]Twitter typeahead bloodhound not prefetching
我有這段代碼可以預先設置twitter,並且根本無法正常工作。 我驗證了json是正確的格式,並且具有正確的值等。任何幫助將不勝感激。 當前,它僅記錄'Initializing autocomplete'
行。 永遠不會調用過濾器中的日志,這似乎是引擎由於某種原因未初始化。 鍵入時,我會看到定義的空模板。 另外,我確實進行了驗證,以確保將咖啡腳本編譯為正確的格式。
initAutocomplete: ->
console.log 'Initializing autocomplete'
engine = new Bloodhound
datumTokenizer: (d) ->
Bloodhound.tokenizers.obj.whitespace(d.val)
queryTokenizer: Bloodhound.tokenizers.whitespace
limit: 10
prefetch:
url:'../api/v3/tickets/autocomplete'
filter: (list) ->
console.log 'List: '
console.log list
engine.initialize()
$('#tt-ticket.typeahead').typeahead null,
name: 'tickets'
displayKey: 'val'
source: engine.ttAdapter()
templates:
empty: [
'<div class="empty-message">',
'Unable to find any matches',
'</div>'
].join('\n'),
suggestion: Handlebars.compile('<p><strong>{{key}}</strong> – {{value}}</p>')
json已驗證為具有以下格式:
[{"key":"Id","val":1}, {"key":"Some other key", "val" : "some val"}]
我意識到自己愚蠢的錯誤,即我用來測試列表是否存在的過濾器回調返回未定義,因為這是console.log
的返回值
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.