Answer the question
In order to leave comments, you need to log in
Sequential function call when working with VK API?
Hello! Trying to work with the VK open API, I ran into this problem:
Why can't I display the value of the startFrom variable in the console?
var startFrom = ""; // Глобальная переменная
// делаю запрос к vk api
function s1() { VK.api("newsfeed.search", {"v":"5.50","q":"привет", "extended":"1", "count":"200", "fields":"photo_50"}, function(data) {
// получаю response и извлекаю нужные данные
startFrom = data.response.next_from; // next_from - номер следующей страницы, который используется для извлечения максимального количества постов
// извлечение параметров профиля
var profilesCount = data.response.profiles.length;
var profilesStr = '';
for (var i=0; i<profilesCount; i++) {
profilesStr +='<img src=' + data.response.profiles[i].photo_50 + '>' + '<a href="https://vk.com/id' + data.response.profiles[i].id + '"' + '>' + data.response.profiles[i].first_name + ' ' + data.response.profiles[i].last_name + '</a>' + '<br/>';
document.getElementById('friends_list').innerHTML = profilesStr + startFrom; // вставляю данные в html
}
});
}
$.when(s1()).done(function () {console.log(startFrom);}); // пытаюсь сделать последовательный вызов, при котором следующая функция выполнится только после завершения предыдущей
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question