Remix

將 eth 轉移到 Remix javasctipt VM solidity V 0.6.0+ 中的帳戶

  • February 11, 2022

我是個簡單的人,但正在學習 Eth Dev。

我正在 Remix 中測試契約,但是我無法在 javascript VM 中的帳戶之間轉移 Eth(使用solidity V0.6.0 +)。我已經研究了一段時間,但大多數實現都在 0.4 版中。而且我看不出在舊版本上開發我的智能合約有什麼意義,特別是考慮到安全和 Open Zeppelin 製作的偉大合約。

因此,將我的問題分解為基本問題…

如何使用solidity V0.6.0+ 在REMIX JavaScript VM 中的賬戶之間轉移乙太坊?

我要做的就是從(ownable.sol)向使用者發送 1 個乙太幣給合約所有者。從那裡我可以為實際合約建構我想要的邏輯。

function Fund() public payable{
       address(owner).transfer(1 ether);
   }

我哪裡錯了?!

您可以通過將收件人地址設為應付來從合約中轉移乙太幣,轉移單位預設為wei,

   function Fund(address payable _toAddress, uint256 _amountInWei) 
   external payable {
       address myAddress = address(this);
       if (myAddress.balance >= _amountInWei) {
           _toAddress.transfer(_amountInWei);
       }
   }

你不能讓合約代表地址 A 將乙太幣轉移另一個地址B,除非A批准合約這樣做!我過去問過一個類似的問題,可能對你有幫助!

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