Я создал функцию, которая возвращает обещание.
function fetch1 () {
return new Promise((res, rej) => {
res("A");
});
}
Я вызываю эту функцию внутри функции api1 и возвращаю обещание, возвращаемое из fetch1.
function api1 () {
return fetch1().then(v =>{
console.log("Api1", v);
return "B"
);
}
Как видите, я возвращаю то же значение, которое возвращается из fetch1. Я не создаю никаких новых Обещаний. Но когда я вызываю это, я получаю следующий вывод.
api1().then(v => console.log("Api2 call", v));
Api1 A
Api2 call B
Мой ожидаемый результат должен быть
Api1 A
Api2 call A
Как видно из этой ссылки . Это обещание тогда приковано цепью. Обещание, возвращенное сначала, затем разрешается следующим. Но я не возвращаю никаких обещаний внутри функции api1.
Я могу обойти это. Но почему это происходит.