Получение данных запроса синхронно в JavaScript - PullRequest
0 голосов
/ 25 июня 2018

Итак, у меня есть интересная проблема.Вот как это можно обобщить быстро и в общем виде: (1) Получить значение свойства или список из БД через конечную точку API на основе Python - свойство (2) Использовать результат запроса для установки для объекта - customObject ["customProperty"].

Между 1 и 2 мне нужно подождать, пока запрос вернет значение.Как мне этого добиться?

function mainWrapperFunction() {
    var property = apiRequestFunction();
    // I need to wait for the result to return from the API request before going on
    customObject["customProperty"] = property;
}

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

Вам нужно использовать Обещание .

async function mainWrapperFunction() {
    var property = await apiRequestFunction();
    // I need to wait for the result to return from the API request before going on
    customObject["customProperty'] = property;
}

Необходимо вернуть функцию Promise от apiRequestFunction();, как показано ниже -

function apiRequestFunction() {
  return new Promise(resolve => {
      resolve('Your value here');
  });
}
0 голосов
/ 25 июня 2018

попробуйте это:

async function mainWrapperFunction() {
    var property = await apiRequestFunction();
    // I need to wait for the result to return from the API request before going on
    customObject['customProperty'] = property;
}

для более подробной информации о функциях asyc https://developer.mozilla.org/fr/docs/Web/JavaScript/Reference/Instructions/async_function

...