본문 바로가기
프로그래밍/Solidity

Hardhat에서 컨트랙트로 이더리움 송금하기

by 쿼카퀀트 2021. 12. 23.
728x90

이번엔 Hardhat에서 테스트할 때, 내 월렛에서 컨트랙트로 이더리움을 보내는 방법을 알려드리겠습니다.

 

보내는 방법은 엄청 간단한데, 바로 코드부터 보시죠

const {ethers} = require("hardhat");

const mc = await ethers.getContractFactory("MyContract");
newContract = await mc.deploy();

const create1 = await newContract.doSomething({value: ethers.utils.parseEther("0.06")});

 

 

먼저 Solidity로 만든 MyContract를 불러와 deploy합니다.

이렇게 만든 컨트랙트를 newContract라 부르도록 하겠습니다.

 

그 다음, myContract를 만들때 구현했던 함수(예를 들어, doSomething())를 호출합니다.

(참고로, 함수가 이더리움을 받기 위해선, Solidity에서 함수에 payable을 붙여줘야 합니다)

 

doSomething()을 호출할 때, {value: ethers.utils.parseEther("0.06")} 처럼 파라미터를 입력해줍니다.

이렇게 하면, 함수에게 0.06 이더리움을 전송할 수 있게 됩니다.

728x90

댓글