Ether

將乙太幣從智能合約轉移到我的錢包

  • May 11, 2020

嗨,我想將乙太幣從智能轉移到我的錢包,所以我在智能合約中創建了一個 sendEther 函式

   function sendEther() public {
msg.sender.transfer(1 ether);
}

非常基本的功能,當我嘗試從 app.js 呼叫它時

  App.contracts.MyContract.deployed().then(function(instance) {
  return instance.sendEther();
})

我懂了

在此處輸入圖像描述

  1. 不明白為什麼是從賬戶到智能合約
  2. 為什麼 msg.value 是 0

不明白為什麼是從賬戶到智能合約

MetaMask 向您顯示您必須支付的 ETH 作為 gas 費用。

為什麼 msg.value 是 0

同樣,MetaMask 會向您顯示您與交易一起發送給合約的 ETH。不是交易的最終結果是什麼。

您的交易恢復的原因可能是智能合約沒有 1 ETH 或者您沒有足夠的 ETH 來支付交易費用。

引用自:https://ethereum.stackexchange.com/questions/83266