У меня есть две функции.function1()
занимает больше времени, чем function2()
, потому что выполняет запрос на выборку.Мне нужно, чтобы они запускались в таком порядке, но результаты function2()
являются первыми, которые отображаются в HTML DOM.Итак, я попытался решить эту проблему с помощью обещаний .Я сделал первую функцию переменной и создал следующий код:
let promise1 = function1() {
fetch()
.then(do x)
.then(display x to HTML DOM)
return 0;
};
function2(a) {
// use the a;
// display some things to the HTML DOM based on `a`
}
promise1.then((a) => {
function2(a);
});
Изначально эти две функции не должны взаимодействовать друг с другом, но для того, чтобы эта работа работала с обещаниями, я создалискусственная потребность с помощью этого оператора return
.Тем не менее, это не работает: я получаю ошибку TypeError: promise1.then is not a function
.Я пролистал веб-страницу « Подробнее ... », но эти сценарии здесь не применимы.
Я новичок в JS и неофит в обещаниях.Я что-то упустил?