Javascript 推特类型预选警犬未预取
我有这个代码来设置TwitterTypeahead,但它根本不起作用。我验证了json是正确的格式,具有正确的值等。如果您有任何帮助,我们将不胜感激。目前,它只记录Javascript 推特类型预选警犬未预取,javascript,twitter-bootstrap,twitter-bootstrap-3,coffeescript,typeahead.js,Javascript,Twitter Bootstrap,Twitter Bootstrap 3,Coffeescript,Typeahead.js,我有这个代码来设置TwitterTypeahead,但它根本不起作用。我验证了json是正确的格式,具有正确的值等。如果您有任何帮助,我们将不胜感激。目前,它只记录“初始化自动完成”行。过滤器中的日志从未被调用,这似乎是由于某种原因引擎没有初始化。当我输入时,我会看到我定义的空模板。此外,我还进行了验证,以确保将咖啡脚本编译为正确的格式 initAutocomplete: -> console.log 'Initializing autocomplete' engine
“初始化自动完成”
行。过滤器中的日志从未被调用,这似乎是由于某种原因引擎没有初始化。当我输入时,我会看到我定义的空模板。此外,我还进行了验证,以确保将咖啡脚本编译为正确的格式
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>')
我意识到我的愚蠢错误,即我用来测试列表是否存在的过滤器回调返回未定义,因为这是
console.log
[{"key":"Id","val":1}, {"key":"Some other key", "val" : "some val"}]