我正在建立一个ERC20代币。我已经正确使用了小数。所以,我正在将10^21个代币转移到一个函数中来转移我的代币。
Minted tokens : 1000000 * (10**decimals) # decimals = 18
所以,我应该能够转移这个数量?
我做了一个UI,并使用web3.js,在那里我得到了这个错误。
Unhandled Rejection (Error):
invalid number value (arg="_price", coderType="uint256", value="1e+21")
然后我也在Remix中尝试了相同的数值,也出现了交易失败的情况。对于数字来说,执行失败,比如我想传输10*20 token,那么交易也失败了。
谢谢你的帮助。
用这个解决了。https:/github.comethereumweb3.jsissues2077#issuecomment-468530879。
const dec = window.web3.utils.toBN(this.props.decimals)
const price_ = window.web3.utils.toBN(this.Object.value*(100))
const price ="0x"+ price_.mul(window.web3.utils.toBN(10).pow(dec)).toString("hex")