может кто-нибудь объяснить, почему Promise запускает функцию then() (а также функцию catch()) при вызове reject?
Когда вызывается разрешение, только then() срабатывает - ОК
Когда вызывается reject, вызываются обе функции then() и catch() - Проблема
static logIn(email, password) {
async function getSession () {
let data = new FormData();
data.append('email', email);
data.append('password', password);
const response = await fetch(
url,
{
method: 'POST',
mode: 'cors',
body: data,
cache: 'no-cache',
headers: {
'Accept': 'application/json',
},
}
);
const json = await response.json();
return json;
}
return new Promise((resolve, reject) => {
getSession()
.then(json => {
if (json.status === 'ok') {
resolve('OK');
} else {
reject('LogIn failed.');
}
})
.catch(error => reject('LogIn failed.'))
});
};
logIn()
.then(console.log('logged in'))
.catch(error => console.log('not logged in'));
then
, какой из них, по вашему мнению, вызывается неправильно в случае отказа? - person Andrew Marshall   schedule 30.04.2018