【发布时间】:2021-04-26 21:01:33
【问题描述】:
我正在学习 dappuniversity 的区块链教程。
当我在行中创建任务时
await App.todoList.createTask(content)
我收到以下错误:
Uncaught (in promise) Error: The send transactions "from" field must be defined!
at Method.inputTransactionFormatter (truffle-contract.js:50747)
at truffle-contract.js:51228
at Array.map (<anonymous>)
at Method.formatInput (truffle-contract.js:51226)
at Method.toPayload (truffle-contract.js:51261)
at Eth.send [as sendTransaction] (truffle-contract.js:51551)
我需要在某处定义一个“来自”字段吗?
【问题讨论】:
-
您使用什么样的提供商? MetaMask(如 cmets 和错误消息定义所暗示的)或其他(如 Infura)?如果是 MetaMask,您是否已导入任何帐户并且您是否允许该应用使用这些帐户中的至少一个?
-
是的,我正在使用 Metamask,我已经允许了。我正在将 Ganache 用于本地以太坊区块链。
-
我猜您的
web3没有设置默认帐户,但我无法验证。尝试将此行附加到loadAccount函数(在App.account = ...之后):web3.eth.defaultAccount = web3.eth.accounts[0]; -
我也添加了,但它是一样的。我更新了 trufflecontract 版本,但没有运气。