Ethereum 与智能合约交互时出错

Ethereum 与智能合约交互时出错,ethereum,solidity,Ethereum,Solidity,我在remix.ethereum中部署了以下合同 0x932FC462d97e23E9fe8d5a1F085d9D611B892666 把它连接到我的UI上 (这是一份测试合同) 发生了以下事情 1) 在remix.ethereum中,我无法编译合同-没有错误 2) 我能够将合同部署到mainnet 3) 合同没有给我任何错误,当我与它在 4) 当我试图通过上面的UI链接与合同进行交互时,我得到以下错误 同时,我在控制台中没有收到任何错误消息 我刚检查了你的源代码,看起来你在这里和其他地方给

我在remix.ethereum中部署了以下合同 0x932FC462d97e23E9fe8d5a1F085d9D611B892666

把它连接到我的UI上 (这是一份测试合同)

发生了以下事情 1) 在remix.ethereum中,我无法编译合同-没有错误 2) 我能够将合同部署到mainnet 3) 合同没有给我任何错误,当我与它在

4) 当我试图通过上面的UI链接与合同进行交互时,我得到以下错误


同时,我在控制台中没有收到任何错误消息

我刚检查了你的源代码,看起来你在这里和其他地方给了错误的方法名:

if (walletMode === 'metamask') {
  contract.buy(masternode, {
    value: convertEthToWei(amount)
  }, function (e, r) {
    console.log(e, r)
  })
}
合同中没有购买功能



您提供了错误的abi,因为您的智能合约中没有名为
buy
的函数。

“我在控制台中没有收到错误消息”-您如何检查它?您是否已切换到该扩展?我在控制台中未收到错误消息您是否可以发送失败的事务并提供哈希?谢谢,我把UI或abi搞砸了,似乎是因为现在我无法加载(Cntract Balane等)再也不能通过UI与契约交互了。之前,我将UI插入到这个契约中,它与我部署的1完全相同,我使用contract@bitconnect如果我遗漏了什么,请告诉我。在我的win.js文件中,我有一个函数console.log(“[fund]using masternode”+主节点);if(walletMode=='metamask'){contract.buy(masternode,{value:convertethtowi(amount)},function(e,r){console.log(e,r)}或者if(walletMode=='web'){call(contractAddress,'buy',[masternode],convertethtowi(amount))}我明白你的意思了。有没有一种简单的方法可以从智能合约中创建函数:我在UI中只需要买卖取款,这样我就可以在智能合约中重命名函数?