未捕获的错误:传输令牌时地址无效
Posted
技术标签:
【中文标题】未捕获的错误:传输令牌时地址无效【英文标题】:Uncaught Error: invalid address when transferring token 【发布时间】:2021-12-16 00:34:44 【问题描述】:当我尝试将令牌从一个地址转移到另一个地址时,会弹出标题中的错误。 这是我的相关JS代码: ($("#targetAddr").val() 是目标地址的地址(在元掩码中),$("#amt").val() 是要转移到的令牌的值。)
tokenContract.transfer($("#targetAddr").val().toString(),$("#amt").val())
我正在使用与 OpenZepplin 的 ERC20 非常相似的智能合约。它的传递类似于ERC20的传递函数。我做错了什么?
以下是我在 javascript 中设置代币合约的代码:
var tokenContractAddress = token_contract_address;
//coinABI is the ABI from my smart contract.
var tokenContract = web3.eth.contract(coinABI).at(tokenContractAddress);
输入中的地址是我的元掩码帐户中的地址之一(本质上是有效地址)
【问题讨论】:
【参考方案1】:您需要使用 web3 或您正在使用的其他框架构建实际事务。 以下是 web3 的示例: https://ethereum.stackexchange.com/questions/24828/how-to-send-erc20-token-using-web3-api
如果您有其他版本,请访问他们的文档:https://web3js.readthedocs.io/en/v1.3.4/index.html
并查看将交易发送到合约的方法。
您需要向代币合约发送一个 tx,该合约将使用需要参数调用代币的原生 transfer()
方法。您需要签署此交易然后发送。
【讨论】:
thks 但看起来我的代码很粗心(现在一切都很好)以上是关于未捕获的错误:传输令牌时地址无效的主要内容,如果未能解决你的问题,请参考以下文章
JQuery:未捕获的 SyntaxError:无效或意外的令牌
vue-resource:在拦截 ajax 错误时捕获“未捕获(在承诺中)”