В моей предыдущей публикации я узнал, как разрешить пользователю вводить число токенов ERC20 и возвращать значение с количеством десятичных знаков.
Скажем, что число десятичных знаков для ERC20 равно 4, а пользователь вводит 1,5, мы покажем им 1,5000 с помощью .toFixed(4)
.
Сейчас я пытаюсь использовать обратный подход (больше информации после кода), однако кажется, что нет никаких функций, таких как «fromFixed».Например, я читаю общее предложение с помощью web3js
checkBalance = async event => {
try {
const balance = await smartContract.methods.balanceOf(event).call();
console.log(balance)
} catch (err) {
let error= 'Address Error';
console.log(error)
}
};
. Предполагая, что у вас есть 10k ERC20, код выше будет отображаться в выходных данных 100000000 (что составляет 10 000,0000).Я хочу показать результат с добавленной точкой для последних 4 десятичных знаков, поэтому просто 10000.0000 (10,000.0000).
Я пытался balance.toFixed(4)
, однако вывод еще хуже, потому что я получаю 1000000000000 (10 000,0000.0000) `
Я пытался console.log(web3.fromWei(balanceOf, 'ether'));
, ожидая, что он будет преобразованк 18 десятичным числам Ethereum, и результат будет примерно 10 000.000000000000000000
Это никогда не работает в функции 'checkBalance', так как она всегда ловит ошибку.