[英]ERC20 contract not able to transfer large tokens
我正在构建一个 ERC20 代币。 我已经正确使用了小数。 因此,我将 10^21 个令牌转移到 function 以转移我的令牌。
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 令牌等数字,执行失败。 然后交易也失败了。
谢谢您的帮助。
使用此解决它: https://github.com/ethereum/web3.js/issues/2077#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")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.