Я поставил точку останова внутри функции datumTokenizer, но она никогда не вызывает вызова. Почему нет? Работает ли он с данными удаленного доступа?Почему мой datumTokenizer никогда не звонит?
var engine = new Bloodhound({
datumTokenizer: function(d) {
return Bloodhound.tokenizers.obj.whitespace(d);
},
queryTokenizer: Bloodhound.tokenizers.nonword,
identify: function(obj) { return obj.id; },
remote: {
url: '/typeahead/%QUERY',
wildcard: '%QUERY'
},
limit: 5
});
$('#city_or_zip').typeahead({
hint: true,
minLength: 2
}, {
display: function(data) {
return formatCityState(data);
},
source: engine.ttAdapter(),
templates: {
empty: 'No results found',
suggestion: function (data) {
return '<p>' + formatCityState(data) + '</p>';
}
}
});
JSON вернулся из удаленного:
[
{
"id":568,
"state":"al",
"city":"pittsview"
},
{
"id":4095,
"state":"ga",
"city":"pitts"
}
]
здесь возвращают Bloodhound.tokenizers.obj.whitespace (D); insteaf of d u передает строковое значение Bloodhound.tokenizers.obj.whitespace («name») – sakir
Это даже не ударяет по этому коду. Ничто в функции datumTokenizer не вызвано. –
@ StephenHorvath вы когда-нибудь получали удаленный доступ к работе? – Zion