Здравствуйте. Нужна ваша помощь с пониманием того, как работают промисы. До этого использовал коллбэки.
В нижеприведенном коде, вызывая второй по счету метод плагина с использованием коллбеков, я получал нужный мне ответ, а с промисами я получаю ответ, который формируется из запроса Extension.curNet(), вместо нужного мне ответа из запроса метода Extension.sendTransaction({}).Почему так происходит и что нужно поменять в коде, либо не хватает??
function StartGame() {
Extension.curNet().then(r => { //метод-1 получаем в r.result нужную сеть ('Network', 'testnet', 'DevsTestnet'), которую выбрали в плагине
if (r.result == 'Network')
targetNet = 'DidUHauNjoW6ERczNLe9gbCqGMUnsmp2iAc5j6HRMA2X';
if (r.result == 'testnet')
targetNet = 'GVNmo9FZGJcvY1c6dfAh5NTUAVDNyNwv2isYjp5PPKGc';
if (r.result == 'DevsTestnet')
targetNet = 'Cxn3eaLNmu3ZmkHQ6skLAFeoMWYXJc5LrfGtJ3GaU3tv';
//Новая игра. Первый раунд
if (currBattle == null) {
//PAYABLE method
Extension.sendTransaction({
target: targetNet,
amount: $("#bet").val(),
fee: "0.01"
}).then(r => { //метод-2 здесь в r.result вместо json-строки получаю результат, будто бы опять был вызван метод получения текущей сети
if(r.result === undefined)
{
if (r.message !== "Site not approved") {
Swal.fire(r.message);
}
return;
}
console.log(r);
count = 0;
$("#start").attr("disabled", "disabled");
$("#start").addClass('disable');
$("#bullet1").attr('src', 'img/bullet--dark.png');
$("#nextRound").removeAttr("disabled", "disabled");
$("#nextRound").removeClass('disable');
$("#stopGame").removeAttr("disabled", "disabled");
$("#stopGame").removeClass('disable');
});
}
}
);
}