Я столкнулся с странной проблемой. Это касается поиска в google Place типа «textearch». Я ищу карту для результатов с ключевым словом и функцию обратного вызова для создания результата («li» в html).вопрос в google поиск по сайту функция обратного вызова
Проблема заключается в том, что поиск по сайту google api дает всего 20 результатов для поиска текста. Чтобы получить больше результатов, мы должны позвонить pagination.nextPage()
. Это вызывает ту же функцию callBack и дает больше результата.
Так,
Мой код
var request = {query: 'pizza in newyork'};
var service = new google.maps.places.PlacesService(map);
service.textSearch(request, callBack1);
function callBack1(results, status,pagination) {
for (var i = 0; i < results.length; i++) {
var place = results[i];
//add place as li
}
if (pagination.hasNextPage) {
pagination.nextPage();
}
doOtherOperation();
}
function doOtherOperation() {
//do manipulations on "li" which are created from callBack1
}
Проблема заключается в том, что doOtherOperation()
начинает выполняться до callBack1() завершает выполнение.
Любой может помочь? как убедиться, что callBack1 будет выполняться полностью (включая рекурсивные вызовы на pagination.nextPage()
)?
Я, я так и думал, позвольте мне попробовать это и увидим! –
Это сработало !, почему я так не думал! :) Большое спасибо! –