Задать вопрос
Morpheus_God
@Morpheus_God

Как правильно записать ответ сервера в переменную?

Добрый день.
Написал вот такой код.
class HttpClient{
    constructor(){
        this.wc = new XMLHttpRequest();
    }

    getAllData(address,callbackFunction){

        this.wc.onreadystatechange = function(){
            if(this.readyState == 4 && this.status == 200){
                callbackFunction(this.responseText);
            }
        };
        
        this.wc.open('GET',address,true);
        this.wc.send();

    }

}

let client = new HttpClient();
let obj = [];

client.getAllData('http://localhost:5000/api/user', (e)=>{
    obj = e;
});

alert(obj);

Делаю запрос на сервер. В ответ алерт выводит пустое окно.
Если же alert указать как коллбек функцию, то он отображает данные.
Как мне правильно присвоить полученный ответ в переменную? Поскольку от ответа сервера зависит то, сколько строк информации JS отрисует на странице.
  • Вопрос задан
  • 373 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
@kova1ev
В вопросе половина ответа написана. От сервера зависит сколько строк JS нарисует на странице - значит отрисовывать нужно после ответа сервера. Что у нас происходит после ответа сервера? - вызывается коллбек. Значит отрисовку нужно запускать из коллбека, передавая ей нужную инфу.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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