Ошибка оценки газа — Отлично работает, если я буду двигаться дальше, но почему такая высокая плата?

#ethereum #solidity

Вопрос:

В следующем коде DApp, где кто-то может продать токен для eth (используя тестовую сеть BSC прямо сейчас, потому что это быстрее). Когда я иду, чтобы вызвать функцию из приложения dapp, я утверждаю утверждение с помощью metamask, на втором экране я получаю одобрение на передачу, с этим: «Ошибка транзакции. Исключение, указанное в контрактном коде» , наряду с сумасшедшей платой за газ в размере 0,285 млрд.

Тем не менее, функция работает нормально и проходит.

РАСПРОДАЖА:

 function sellToken(uint256 _amount) external {
            token.transferFrom(msg.sender, address(this), _amount);
 

Реагировать JS:

 const sellToken = (amount) => {
    setUpdateState(true)
     token.methods.approve(spender._address, amount).send({from:         account}).on('transactionHash', (hash) => { 
  spender.methods.sellToken(amount).send({from: account}).on('transactionHash',             (hash) => {
  })
})
}
 

Это просто утверждение из dapp -> перевод из части смарт-контракта spender, теперь понятно, почему я продолжаю получать эту ошибку с высоким расходом газа. Возможно, дело в том, как это называется из react?