지난주에 VSC를 이용해 페이지에 나의 지갑주소와 로그인,로그아웃을 할 수 있는 기능을 만들고, 지갑에 있는 잔액조회까지 가능하도록 버튼도 만들었다. 그리고 민팅을 할 수 있는 버튼까지 만들고 수업을 마무리하였는데 마치지 못한 부분까지 오늘 마무리를 했다.
<변경 전> const web3 = new Web3("https://rpc-mumbai.maticvigil.com"); <변경 후> const web3 = new Web3(window.ethereum);
지난주에 못다한 부분을 진행하고 다량의 NFT를 배포하는 방법과 민팅. 그리고 VSC에 코드를 작성해 민팅을 하는 방법까지 진행을 해보았다. 오늘 어려웠던 부분은 아무래도 remix를 다루는게 어려웠는데 그 부분들에 대해서 간략하게 기록을 남겨보겠다.
항상 Injected Provider - MetaMask로 되어있는지 확인할 것.
CONTRACT가 MintNft인지 꼭 확인할 것.
Deploy의 경우 새로 NFT를 배포할때 사용하는데
At Address에는 NFT의 주소를 넣어준다. 해당 주소는 오픈씨에서 NFT를 누르면 상단에서 ? 뺀 나머지 주소를 입력하면 된다.
batchMint : 배치민트의 경우 우리가 몇개의 NFT를 배치할것인지를 작성해줘야해서 필요한 경우 값(수량)을 입력하면 된다. 수량을 입력한 만큼의 NFT를 배포한다.
mintNft : 민트NFT의 경우 값을 따로 입력하지 않고 하나씩 입력이 되도록 되어있다.
balanceOf : 나의 메타마스크 지갑주소를 넣고 조회할 수 있다.
tokenOfOwnerByIndex : 배열형태로 내가 가지고 있는 NFT를 확인할 수 있다. 또한, 내것뿐만 아니라 다른사람의 지갑주소를 넣으면 다른사람의 NFT를 확인할 수 있다.
ex) 지갑주소를 넣고 인덱스값을 넣으면 해당 NFT의 토큰번호를 알 수 있다. 예를들어 인덱스값 0번을 넣으면 해당 0번의 NFT의 토큰번호를 알 수 있게 되는것이다.
이것을 이용하면 내가 가장 마지막에 등록한 NFT의 인덱스값과 토큰번호를 알 수 있다.
tokenURL : 토큰아이디를 넣으면 그 토큰아이디에 해당되는 json파일 정보가 있는 html 주소를 알려준다.
totalNft : deploy할때 정해주는 NFT 최대 발행량
totalSupply : 현재 민팅으로 발행된 NFT 수량
오늘은 지난시간에 이어 페이지를 통해 나의 지갑주소를 가져오고 금액을 확인하고 민팅을 할 수 있는 기본적인 시스템을 만드는 과정을 마무리했고, NFT를 배포하는것뿐만 아니라 대량의 NFT를 한번에 생산하고 배포할 수 있는 방법에 대해서도 배웠다. 또한, VSCode를 통해 코드를 작성해서 민팅을 하는 방법에 대해서도 배웠다. 전체적인 내용에 대해서 다 TIL을 작성하지는 못했지만 기본적으로 많이 배포해보고 사용해보면서 몸에 익히는것이 중요하다는 생각을 했다. 강사님께서 이번주에 part2 마지막 과제를 주신다고 하셨는데 잘 마무리 할 수 있도록 수업을 잘 들어야겠다. 잘 마무리 할 수 있을지 걱정이다.