Как я могу возвратить значение от GM_xmlhttprequest?

.block {
  border: 1px solid red;
  display: flex;
  flex-wrap: wrap;
  max-width: 900px;
  justify-content: flex-start;

}

.block__item {
  background: grey;
  height: 20px;
  border-bottom: 2px solid white;
  border-right: 2px solid white;
  flex-grow: 1;
  flex-shrink: 0;
}

.block__item:last-of-type {
  border-right: none; 
}
<div class="block">
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
  <div class="block__item"></div>
</div>
<div class="block">
  <div class="block__item"></div>
  <div class="block__item"></div>
</div>
<div class="block">
  <div class="block__item"></div>
</div>

5
задан GeoffreyF67 13 December 2011 в 17:50
поделиться

1 ответ

Запрос работает асинхронно. Вот почему функция берет onload функция обратного вызова во-первых. Если это было синхронно, то GM_xmlhttpRequest просто возвратил бы детали ответа как обычная функция.

При ожидании запроса для возврата, код после вызова к GM_xmlhttpRequest продолжает работать. Ваш сценарий правильно определяет это infiltrationResult не определено, потому что запрос еще не завершился.

Если необходимо сделать, больше, чем просто присваивают переменную, когда запрос возвращается, то выполните в этом onload обратный вызов.

8
ответ дан 14 December 2019 в 01:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: