Я знаю, что некоторые подобные вопросы были заданы временем gazillon, но мне действительно нужно сделать асинхронный вызов по-настоящему синхронным. Обычно мне приходится использовать AMD в асинхронном режиме, и я должен удостовериться, что некоторые вызовы на require
выполняются синхронно - после того, как выполненный в обратном вызове выполнен. Достаточно было бы заставить его работать на хроме. Кажется, что это можно сделать с ES6 yield
/await
. К сожалению, , кажется, требует traceur
с хромом. Фактически, я хотел бы иметь легкое, минимальное решение и избегать введения большого объема библиотеки.Как мне (действительно!) Выполнить синхронизацию асинхронного вызова JavaScript (в Chrome)?
Какое минимальное решение для этого реализовано?
Есть ли какое-либо состояние (= видимо для области требуемых вызовов), которое может быть задано обратным вызовом? – raina77ow
Да. Я мог бы сделать: «var whatEverIWantSetFromCallBack; require (...); // onlyProceedWhenSetByCallBack;" –
Затем вы можете отложить вызов 'require', как показано в [этом ответе] (http://stackoverflow.com/a/26409908/1229023), правильно? Вам нужно будет проверить, что var вместо 'busy', и выполнить обратный вызов (поставленный в' wait') вместо решения обещания, но основная идея будет такой же. – raina77ow