Я пишу веб-приложение Angular, которое связывается с сетью Ethereum.В приложении у меня есть следующий метод:
async onSubmit() {
const accounts = await this.web3.eth.getAccounts();
this.message = 'Waiting on transaction success...';
await this._lottery.methods.enter().send({
from: accounts[0],
value: this.web3.utils.toWei(this.value, 'ether')
});
this.message = 'You have been entered!';
}
Метод запускается при событии отправки формы.Состояние контракта обновляется при вызове этого метода, но он как бы застревает в строке await
и не возвращается к следующим строкам после возврата.
Интересно, что я несталкиваются с этой проблемой при чтении из сети, т.е. call
вместо send
.
PS Я использую web3 v1.0.0 с сетью Rinkeby.