Wpis z mikrobloga

Wywołuję dwa skrypty asynchronicznie i w jednym tworzy się obiekt, a ten drugi go nie widzi :/

Jak ładuję synchronicznie to wszystko jest okej. Może ktoś mi napisać dlaczego?

frontAPI.getProduct(function (product) {
console.log(product);
}, {
id: 229
});

W pierwszym tworzę obiekt frontAPI, ale ten skrypt go nie widzi :/ Konsola wywala błąd "frontAPI is not defined"

Czy nie da się inline'owych skryptów dawać jako asynchronicznych? Albo robię to źle?

#webdev #javascript #js
  • 3
  • Odpowiedz
@jaskowice1, jeśli pobierasz skrypty z atrybutem "async" to ich kolejność wywołania nie musi być zachowana (odpalają się zaraz po ściągnięciu w czasie parsowania HTMLa, pauzując je).

w Twoim wypadku spróbuj zamiast "async" użyć "defer", który sprawi, że mimo, iż skrypty będą pobrane podczas parsowania HTMLa, to ich wykonanie odbędzie się dopiero po jego sparsowaniu, wg zadeklarowanej wcześnie kolejności
  • Odpowiedz