【发布时间】:2018-08-11 17:04:22
【问题描述】:
编写了这个简单的solidity合约,其中函数接受一些参数。
function fund(uint _dbIndex, uint _fundedAmount) public {
uint totalAmount = projectWallets[_dbIndex].fundedAmount;
totalAmount += _fundedAmount;
projectWallets[_dbIndex].fundedAmount = totalAmount;
}
创建此智能合约后,我尝试使用 javascript 将 SC 连接到 HTML 页面。我设法让一个没有参数的函数工作,但如果函数中有参数,它就无法工作..
<input type="number" min="0" placeholder="Fund Amount" style="color: black;" id="fund">
<button id="fund_project">Fund Project</button>
上面是将值发送到智能合约的输入和按钮。
$('#fund_project').click(function (e) {
e.preventDefault();
log("Calling fund function...");
counter.fund(dbIndex, funds);
});
这是一段代码,我在其中使用带参数的函数。如何让它工作?
【问题讨论】:
-
dbIndex和funds定义在哪里? -
你得到什么错误?如果您没有收到错误,那是什么原因导致无法正常工作?
-
i 是在合同中定义的。只是展示我是如何完成这个功能的。我得到的错误是“未捕获的错误:MetaMask Web3 对象不支持没有回调参数的同步方法,例如 eth_sendTransaction。”
-
这个错误有什么你不明白的地方吗? (你不知道回调是什么吗?)
-
我不太明白是的。在我提交问题之前忘记包含错误是的
标签: javascript solidity smartcontracts web3